CmdID

CmdID / PowerShell / Cmdlets / Set

Set-JobTrigger

Changes the job trigger of a scheduled job. PowerShell reference

From the PowerShell reference 16 parameters

Opens CmdID with your command, read as PowerShell. It is read in your browser and sent nowhere.

What it does

from the PowerShell reference, CC BY 4.0

Changes the job trigger of a scheduled job. The Set-JobTrigger cmdlet changes the properties of the job triggers of scheduled jobs. You can use it to change the time or frequency at which the jobs start or to change from a time-based schedules to schedules that are triggered by a logon or startup. A job trigger defines a recurring schedule or conditions for starting a scheduled job. Although job triggers are not saved to disk, you can change the job triggers of scheduled jobs, which are saved to disk. To change a job trigger of a scheduled job, begin by using the Get-JobTrigger cmdlet to get the job trigger of a scheduled job. Then, pipe the trigger to Set-JobTrigger or save the trigger in a variable and use the InputObject parameter of Set-JobTrigger cmdlet to identify the trigger. Use the remaining parameters of Set-JobTrigger to change the job trigger. When you change the type of a job trigger, such as changing a job trigger from a daily or weekly trigger to an AtLogon trigger, the original trigger properties are deleted. However, if you change the values of the trigger, but not its type, such as changing the days in a weekly trigger, only the properties that you specify are changed. All other properties of the original job trigger are retained. Set-JobTrigger is one of a collection of job scheduling cmdlets in the PSScheduledJob module that is included in Windows PowerShell. For more information about Scheduled Jobs, see the About topics in the PSScheduledJob module. Import the PSScheduledJob module and then type: Get-Help about_Scheduled* or see about_Scheduled_Jobs. This cmdlet was introduced in Windows PowerShell 3.0.

Set-JobTrigger [-InputObject] <ScheduledJobTrigger[]> [-DaysInterval <Int32>] [-WeeksInterval <Int32>] [-RandomDelay <TimeSpan>] [-At <DateTime>] [-User <String>] [-DaysOfWeek <DayOfWeek[]>] [-AtStartup] [-AtLogOn] [-Once] [-RepetitionInterval <TimeSpan>] [-RepetitionDuration <TimeSpan>] [-RepeatIndefinitely] [-Daily] [-Weekly] [-PassThru] [<CommonParameters>]

Change the days in a job trigger

Get-JobTrigger -Name "DeployPackage"Identify

Change the job trigger type

Get-JobTrigger -Name "Inventory"Identify

Change the user on a remote job trigger

Invoke-Command -ComputerName "Server01" -ScriptBlock { Get-ScheduledJob | Get-JobTrigger | Where-Object {$_.User} | Set-JobTrigger -User "Domain01/Admin02" }Identify

Change one of many job triggers

Get-JobTrigger -Name "SecurityCheck"Identify

Its page in the reference: Set-JobTrigger.

Parameters

16 in the PowerShell reference
-AtStarts the job at the specified date and time. Enter a DateTime object, such as one that the Get-Date cmdlet returns, or a string that can be converted to a time, such as April 19, 2012 15:00, 12/31/2013 9:00 PM, or 3am. If you don't specify an element of the DateTime object, such as seconds, that element of the job trigger is not changed. If the original job trigger didn't include a DateTime object and you omit an element, the job trigger is created with the corresponding element from the current date and time. When using the Once parameter, set the value of the At parameter to a particular date and time. Because the default date in a DateTime object is the current date, setting a time before the current time without an explicit date results in a job trigger for a time in the past. DateTime objects, and strings that are converted to DateTime objects, are automatically adjusted to be compatible with the date and time formats selected for the local computer in Region and Language in Control Panel.
-AtLogOnStarts the scheduled job when the specified users log on to the computer. To specify a user, use the User parameter.
-AtStartupStarts the scheduled job when Windows starts.
-DailySpecifies a recurring daily job schedule. Use the other parameters in the Daily parameter set to specify the schedule details.
-DaysIntervalSpecifies the number of days between occurrences on a daily schedule. For example, a value of 3 starts the scheduled job on days 1, 4, 7 and so on. The default value is 1.
-DaysOfWeekSpecifies the days of the week on which a weekly scheduled job runs. Enter day names, such as Monday, Thursday, integers 0-6, where 0 represents Sunday, or an asterisk (*) to represent every day. This parameter is required in the Weekly parameter set. Day names are converted to their integer values in the job trigger. When you enclose day names in quotation marks in a command, enclose each day name in separate quotation marks, such as "Monday", "Tuesday". If you enclose multiple day names in a single quotation mark pair, the corresponding integer values are summed. For example, "Monday, Tuesday" (1 + 2) results in a value of Wednesday (3).
-InputObjectSpecifies the job triggers. Enter a variable that contains ScheduledJobTrigger objects or type a command or expression that gets ScheduledJobTrigger objects, such as a Get-JobTrigger command. You can also pipe a ScheduledJobTrigger object to Set-JobTrigger. If you specify multiple job triggers, Set-JobTrigger makes the same changes to all job triggers.
-OnceSpecifies a non-recurring (one time) schedule.
-PassThruReturns the job triggers that changed. By default, this cmdlet does not generate any output.
-RandomDelayEnables a random delay that begins at the scheduled start time, and sets the maximum delay value. The length of the delay is set pseudo-randomly for each start and varies from no delay to the time specified by the value of this parameter. The default value, zero (00:00:00), disables the random delay. Enter a timespan object, such as one returned by the New-TimeSpan cmdlet, or enter a value in <hours>:<minutes>:<seconds> format, which is automatically converted to a timespan object.
-RepeatIndefinitelyThis parameter, available starting in Windows PowerShell 4.0, eliminates the necessity of specifying a TimeSpan.MaxValue value for the RepetitionDuration parameter to run a scheduled job repeatedly, for an indefinite period.
-RepetitionDurationRepeats the job until the specified time expires. The repetition frequency is determined by the value of the RepetitionInterval parameter. For example, if the value of RepetitionInterval is 5 minutes and the value of RepetitionDuration is 2 hours, the job is triggered every five minutes for two hours. Enter a timespan object, such as one that the New-TimeSpan cmdlet returns or a string that can be converted to a timespan object, such as 1:05:30. To run a job indefinitely, add the RepeatIndefinitely parameter instead. To stop a job before the job trigger repetition duration expires, set the RepetitionDuration value to zero (0). To change the repetition duration or repetition interval of a Once job trigger, the command must include both the RepetitionInterval and RepetitionDuration parameters. To change the repetition duration or repetition intervals of other types of job triggers, the command must include the Once, At, RepetitionInterval and RepetitionDuration parameters.
-RepetitionIntervalRepeats the job at the specified time interval. For example, if the value of this parameter is 2 hours, the job is triggered every two hours. The default value, 0, does not repeat the job. Enter a timespan object, such as one that the New-TimeSpan cmdlet returns or a string that can be converted to a timespan object, such as 1:05:30. To change the repetition duration or repetition interval of a Once job trigger, the command must include both the RepetitionInterval and RepetitionDuration parameters. To change the repetition duration or repetition intervals of other types of job triggers, the command must include the Once, At, RepetitionInterval and RepetitionDuration parameters.
-UserSpecifies the users who trigger an AtLogon start of a scheduled job. Enter the name of a user in <UserName> or <Domain>\<Username> format or enter an asterisk (*) to represent all users. The default value is all users.
-WeeklySpecifies a recurring weekly job schedule. Use the other parameters in the Weekly parameter set to specify the schedule details.
-WeeksIntervalSpecifies the number of weeks between occurrences on a weekly job schedule. For example, a value of 3 starts the scheduled job on weeks 1, 4, 7 and so on. The default value is 1.