Compartilhar via


Get-JobTrigger

Obtém os gatilhos de trabalho de trabalhos agendados.

Sintaxe

Get-JobTrigger
   [[-TriggerId] <Int32[]>]
   [-InputObject] <ScheduledJobDefinition>
   [<CommonParameters>]
Get-JobTrigger
   [[-TriggerId] <Int32[]>]
   [-Name] <String>
   [<CommonParameters>]
Get-JobTrigger
   [[-TriggerId] <Int32[]>]
   [-Id] <Int32>
   [<CommonParameters>]

Description

O cmdlet Get-JobTrigger obtém os gatilhos de trabalho de trabalhos agendados. Você pode usar esse comando para examinar os gatilhos de trabalho ou para direcionar os gatilhos de trabalho para outros cmdlets.

Um gatilho de trabalho define uma agenda ou condições recorrentes para iniciar um trabalho agendado. Gatilhos de trabalho não são salvos no disco de forma independente; eles fazem parte de um trabalho agendado. Para obter um gatilho de trabalho, especifique o trabalho agendado iniciado pelo gatilho.

Use os parâmetros do cmdlet Get-JobTrigger para identificar os trabalhos agendados. Você pode identificar os trabalhos agendados por seus nomes ou números de identificação ou inserindo ou canalizando objetos de ScheduledJob, como aqueles retornados pelo cmdlet Get-ScheduledJob, para Get-JobTrigger.

Get-JobTrigger é um de uma coleção de cmdlets de agendamento de trabalho no módulo PSScheduledJob incluído no Windows PowerShell.

Para obter mais informações sobre trabalhos agendados, consulte os tópicos sobre no módulo PSScheduledJob. Importe o módulo PSScheduledJob e digite: Get-Help about_Scheduled* ou veja about_Scheduled_Jobs.

Esse cmdlet foi introduzido no Windows PowerShell 3.0.

Exemplos

Exemplo 1: Obter um gatilho de trabalho pelo nome do trabalho agendado

PS C:\> Get-JobTrigger -Name "BackupJob"

O comando usa o parâmetro Name de Get-JobTrigger para obter os gatilhos de trabalho do trabalho agendado do BackupJob.

Exemplo 2: Obter um gatilho de trabalho por ID

The first command uses the Get-ScheduledJob cmdlet to display the scheduled jobs on the local computer. The display includes the IDs of the scheduled jobs.
PS C:\> Get-ScheduledJob
Id         Name            Triggers        Command                                  Enabled
--         ----            --------        -------                                  -------
1          ArchiveProjects {1}             \\Server\Share\Archive-Projects.ps1      True
2          Backup          {1,2}           \\Server\Share\Run-Backup.ps1            True
3          Test-HelpFiles  {1}             \\Server\Share\Test-HelpFiles.ps1        True
4          TestJob         {}              \\Server\Share\Run-AllTests.ps1          True

The second command uses the **Get-JobTrigger** cmdlet to get the job trigger for the Test-HelpFiles job (ID = 3)
PS C:\> Get-JobTrigger -ID 3

O exemplo usa o parâmetro ID de Get-JobTrigger para obter os gatilhos de trabalho de um trabalho agendado.

Exemplo 3: Obter gatilhos de trabalho canalizando um trabalho

PS C:\> Get-ScheduledJob -Name *Backup*, *Archive* | Get-JobTrigger

Esse comando obtém os gatilhos de trabalho de todos os trabalhos que têm Backup ou Arquivo Morto em seus nomes.

Exemplo 4: Obter o gatilho de trabalho de um trabalho em um computador remoto

PS C:\> Invoke-Command -ComputerName Server01 { Get-ScheduledJob Backup | Get-JobTrigger -TriggerID 2 }

Esse comando obtém um dos dois gatilhos de trabalho de um trabalho agendado em um computador remoto.

O comando usa o cmdlet Invoke-Command para executar um comando no computador Server01. Ele usa o cmdlet Get-ScheduledJob para obter o trabalho agendado de Backup, que ele redireciona para o cmdlet get-jobTrigger . Ele usa o parâmetro TriggerID para obter apenas o segundo gatilho.

Exemplo 5: Obter todos os gatilhos de trabalho

PS C:\> Get-ScheduledJob | Get-JobTrigger | Format-Table -Property ID, Frequency, At, DaysOfWeek, Enabled, @{Label="ScheduledJob";Expression={$_.JobDefinition.Name}} -AutoSize
Id Frequency At                    DaysOfWeek Enabled ScheduledJob
-- --------- --                    ---------- ------- ------------
1    Weekly  9/28/2011 3:00:00 AM  {Monday}   True    Backup
1    Daily   9/27/2011 11:00:00 PM            True    Test-HelpFiles

Esse comando obtém todos os gatilhos de trabalho de todos os trabalhos agendados no computador local.

O comando usa o Get-ScheduledJob para obter os trabalhos agendados no computador local e os redireciona para Get-JobTrigger, que obtém o gatilho de trabalho de cada trabalho agendado (se houver).

Para adicionar o nome do trabalho agendado à exibição do gatilho de trabalho, o comando usa o recurso de propriedade calculada do cmdlet Format-Table. Além das propriedades do gatilho de trabalho exibidas por padrão, o comando cria uma nova propriedade ScheduledJob que exibe o nome do trabalho agendado.

Exemplo 6: Obter a propriedade de gatilho de trabalho de um trabalho agendado

The command uses the Get-ScheduledJob cmdlet to get the Test-HelpFiles scheduled job. Then it uses the dot method (.) to get the JobTriggers property of the Test-HelpFiles scheduled job.
PS C:\> (Get-ScheduledJob Test-HelpFiles).JobTriggers

The second command uses the Get-ScheduledJob cmdlet to get all scheduled jobs on the local computer. It uses the ForEach-Object cmdlet to get the value of the JobTrigger property of each scheduled job.
PS C:\> Get-ScheduledJob | foreach {$_.JobTriggers}

Os gatilhos de trabalho de um trabalho agendado são armazenados na propriedade JobTriggers do trabalho. Este exemplo mostra alternativas para usar o cmdlet Get-JobTrigger para obter gatilhos de trabalho. Os resultados são idênticos ao uso do cmdlet Get-JobTrigger e as técnicas podem ser usadas de forma intercambiável.

Exemplo 7: Comparar gatilhos de trabalho

The first command gets the job trigger of the ArchiveProjects scheduled job. The command pipes the job trigger to the Tee-Object cmdlet, which saves the job trigger in the $T1 variable and displays it at the command line.
PS C:\> Get-ScheduledJob -Name ArchiveProjects | Get-JobTrigger | Tee-Object -Variable T1
Id         Frequency       Time                   DaysOfWeek              Enabled
--         ---------       ----                   ----------              -------
0          Daily           9/26/2011 3:00:00 AM                           True

The second command gets the job trigger of the Test-HelpFiles scheduled job. The command pipes the job trigger to the Tee-Object cmdlet, which saves the job trigger in the $T2 variable and displays it at the command line.
PS C:\> Get-ScheduledJob -Name "Test-HelpFiles" | Get-JobTrigger | Tee-Object -Variable T2
Id         Frequency       Time                   DaysOfWeek              Enabled
--         ---------       ----                   ----------              -------
0          Daily           9/26/2011 3:00:00 AM                           True

The third command compares the job triggers in the $t1 and $t2 variables. It uses the Get-Member cmdlet to get the properties of the job trigger in the $t1 variable. It pipes the properties to the ForEach-Object cmdlet, which compares each property to the properties of the job trigger in the $t2 variable by name. The command then pipes the differing properties to the Format-List cmdlet, which displays them in a list.The output indicates that, although the job triggers appear to be the same, the HelpFiles job trigger includes a random delay of three (3) minutes.
PS C:\> $T1 | Get-Member -Type Property | ForEach-Object { Compare-Object $T1 $T2 -Property $_.Name}
RandomDelay                                                 SideIndicator
-----------                                                 -------------
00:00:00                                                    =>
00:03:00                                                    <=

Este exemplo mostra como comparar os gatilhos de trabalho de dois trabalhos agendados.

Parâmetros

-Id

Especifica o número de identificação de um trabalho agendado. Get-JobTrigger obtém o gatilho de trabalho do trabalho agendado especificado.

Para obter o número de identificação de trabalhos agendados no computador local ou em um computador remoto, use o cmdlet Get-ScheduledJob.

Tipo:Int32
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-InputObject

Especifica um trabalho agendado. Insira uma variável que contenha objetos ScheduledJob ou digite um comando ou expressão que obtém objetos scheduledJob, como um comando Get-ScheduledJob. Você também pode redirecionar objetos de ScheduledJob para Get-JobTrigger.

Tipo:ScheduledJobDefinition
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Name

Especifica o nome de um trabalho agendado. Get-JobTrigger obtém o gatilho de trabalho do trabalho agendado especificado. Há suporte para curingas.

Para obter os nomes de trabalhos agendados no computador local ou em um computador remoto, use o cmdlet Get-ScheduledJob.

Tipo:String
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-TriggerId

Obtém os gatilhos de trabalho especificados. Insira as IDs de gatilho de um ou mais gatilhos de trabalho de um trabalho agendado. Use esse parâmetro quando o trabalho agendado especificado pelos parâmetros Name, IDou InputObject tiver vários gatilhos de trabalho.

Tipo:Int32[]
Cargo:1
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

ScheduledJobDefinition

Você pode canalizar um trabalho agendado de Get-ScheduledJob para Get-JobTrigger.

Saídas

ScheduledJobTrigger