Export (0) Print
Expand All

Add-JobTrigger

Updated: May 7, 2014

Applies To: Windows PowerShell 4.0

Add-JobTrigger

Adds job triggers to scheduled jobs

Syntax

Parameter Set: JobDefinition
Add-JobTrigger [-InputObject] <ScheduledJobDefinition[]> [-Trigger] <ScheduledJobTrigger[]> [ <CommonParameters>]

Parameter Set: JobDefinitionId
Add-JobTrigger [-Id] <Int32[]> [-Trigger] <ScheduledJobTrigger[]> [ <CommonParameters>]

Parameter Set: JobDefinitionName
Add-JobTrigger [-Name] <String[]> [-Trigger] <ScheduledJobTrigger[]> [ <CommonParameters>]




Detailed Description

The Add-JobTrigger cmdlet adds job triggers to scheduled jobs. You can use it to add multiple triggers to multiple scheduled jobs.

A "job trigger" starts a scheduled job on a one-time or recurring schedule or when an event occurs.

Use the Trigger parameter of Add-JobTrigger to identify the job triggers to add. Use the Name, ID, or InputObject parameters of Add-JobTrigger to identify the scheduled job to which the triggers are added.

To create job triggers for the value of the Trigger parameter, use the New-JobTrigger cmdlet or use a hash table to specify the job trigger.

Add-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 is introduced in Windows PowerShell 3.0.

Parameters

-Id<Int32[]>

Specifies the identification numbers of the scheduled jobs. Add-JobTrigger adds the job trigger to the specified scheduled jobs.

To get the identification number of scheduled jobs on the local computer or a remote computer, use the Get-ScheduledJob cmdlet.


Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-InputObject<ScheduledJobDefinition[]>

Specifies the scheduled jobs. Enter a variable that contains ScheduledJob objects or type a command or expression that gets ScheduledJob objects, such as a Get-ScheduledJob command. You can also pipe ScheduledJob objects to Add-JobTrigger.


Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

True (ByValue)

Accept Wildcard Characters?

false

-Name<String[]>

Specifies the names of the scheduled jobs. Add-JobTrigger adds the job triggers to the specified scheduled jobs. Wildcards are supported.

To get the names of scheduled jobs on the local computer or a remote computer, use the Get-ScheduledJob cmdlet.


Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Trigger<ScheduledJobTrigger[]>

Specifies the job triggers to add. Enter a hash table that specifies job triggers or 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 ScheduledJobTrigger objects to Add-JobTrigger.


Aliases

none

Required?

true

Position?

2

Default Value

none

Accept Pipeline Input?

True (ByValue)

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see  about_CommonParameters (http://go.microsoft.com/fwlink/p/?LinkID=113216).

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

  • Microsoft.PowerShell.ScheduledJob.ScheduledJobTrigger, Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

    You can pipe job triggers or scheduled jobs to Add-JobTrigger.


Outputs

The output type is the type of the objects that the cmdlet emits.

  • None

    This cmdlet does not return any output.


Examples

Example 1: Add a job trigger to a scheduled job

These commands add the Daily job trigger to the TestJob scheduled job.

The first command uses the New-JobTrigger cmdlet to create a job trigger that starts a scheduled job every day at 3:00 a.m. The command saves the job trigger in the $Daily variable.

The second command uses the Add-JobTrigger cmdlet to add the job trigger in the $Startup variable to the TestJob scheduled job.


PS C:\> $Daily = New-JobTrigger -Daily -At 3AMPS C:\>Add-JobTrigger -Trigger $Daily -Name TestJob

Example 2: Add a job trigger to many scheduled jobs

This command adds an AtStartup job trigger to all scheduled jobs on the local computer. It uses the Get-ScheduledJob to get all of the scheduled jobs on the computer. It uses a pipeline operator (|) to send the jobs to the Add-JobTrigger cmdlet, which adds the job trigger to each of the scheduled jobs. The value of the Trigger parameter is a New-JobTrigger command that creates the AtStartup job trigger.


PS C:\> Get-ScheduledJob | Add-JobTrigger -Trigger (New-JobTrigger -AtStartup)

Example 3: Copy a job trigger

These commands copy the job trigger from the BackupArchives scheduled job and add it to the TestBackup and BackupLogs scheduled jobs.

The first command uses the Get-JobTrigger cmdlet to get the job trigger of the BackupArchives scheduled job. The command saves the trigger in the $t variable.

The second command uses the Add-JobTrigger cmdlet to add the job trigger in $t to the TestBackup and BackupLogs scheduled jobs.


PS C:\> $t = Get-JobTrigger -Name BackupArchives                       
PS C:\>Add-JobTrigger -Name TestBackup, BackupLogs -Trigger $t

Related topics



Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft