Compartilhar via


Get-JobTrigger

Habilita os gatilhos de trabalhos agendados.

Sintaxe

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

Description

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

Um gatilho de trabalho define um agendamento ou condições recorrentes para iniciar um trabalho agendado. Gatilhos de trabalho não são salvas em disco de modo independente; elas fazem parte de um trabalho agendado. Para obter um gatilho de trabalho, especifique o trabalho agendado que o gatilho inicia.

Use os parâmetros do Get-JobTrigger cmdlet 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 ScheduledJob, como aqueles retornados pelo Get-ScheduledJob cmdlet, 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 o módulo PSScheduledJob. Importe o módulo PSScheduledJob e digite: Get-Help about_Scheduled* ou consulte about_Scheduled_Jobs.

Este cmdlet foi introduzido no Windows PowerShell 3.0.

Exemplos

Exemplo 1: Obter um gatilho de trabalho por nome de trabalho agendado

Get-JobTrigger -Name "BackupJob"

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

Exemplo 2: Obter um gatilho de trabalho por ID

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

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

Get-JobTrigger -ID 3

O primeiro comando usa o Get-ScheduledJob cmdlet para exibir os trabalhos agendados no computador local. A exibição inclui as IDs dos trabalhos agendados.

O segundo comando usa o Get-JobTrigger cmdlet para obter o gatilho de trabalho para o Test-HelpFiles trabalho (cuja ID é 3).

Exemplo 3: Obter gatilhos de trabalho canalizando um trabalho

Este exemplo obtém gatilhos de trabalho de trabalhos que têm nomes correspondentes.

Get-ScheduledJob -Name *Backup*, *Archive* | Get-JobTrigger

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

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

Este exemplo obtém os gatilhos de um trabalho agendado em um computador remoto.

Invoke-Command -ComputerName Server01 { Get-ScheduledJob Backup | Get-JobTrigger -TriggerID 2 }

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

Exemplo 5: Obter todos os gatilhos de trabalho

Este exemplo obtém todos os gatilhos de trabalho de todos os trabalhos agendados no computador local.

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

O comando usa o Get-ScheduledJob para obter os trabalhos agendados no computador local e os canaliza 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 Format-Table cmdlet. Além das propriedades do acionador de trabalho que são exibidas por padrão, o comando cria uma nova propriedade ScheduledJob que exibe o nome do trabalho agendado.

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

Este exemplo mostra métodos diferentes para exibir a propriedade JobTrigger de um trabalho agendado.

(Get-ScheduledJob Test-HelpFiles).JobTriggers
Get-ScheduledJob | foreach {$_.JobTriggers}

O primeiro comando usa o Get-ScheduledJob cmdlet para obter o trabalho agendado Test-HelpFiles . Em seguida, ele usa o método dot (.) para obter a propriedade JobTriggers do trabalho agendado Test-HelpFiles .

O segundo comando usa o Get-ScheduledJob cmdlet para obter todos os trabalhos agendados no computador local. Ele usa o ForEach-Object cmdlet para obter o valor da propriedade JobTriggers de cada trabalho agendado.

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

Exemplo 7: Comparar gatilhos de trabalho

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

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

$t1| Get-Member -Type Property | ForEach-Object { Compare-Object $t1 $t2 -Property $_.Name}

RandomDelay                                                 SideIndicator
-----------                                                 -------------
00:00:00                                                    =>
00:03:00                                                    <=

O primeiro comando obtém o gatilho de trabalho do trabalho agendado ArchiveProjects . O comando canaliza o gatilho de trabalho para o Tee-Object cmdlet, que salva o gatilho de trabalho na $t1 variável e o exibe na linha de comando.

O segundo comando obtém o gatilho de trabalho do trabalho agendado Test-HelpFiles . O comando canaliza o gatilho de trabalho para o Tee-Object cmdlet, que salva o gatilho de trabalho na $t2 variável e o exibe na linha de comando.

O terceiro comando compara os gatilhos de trabalho nas $t1 variáveis e $t 2. Ele usa o Get-Member cmdlet para obter as propriedades do gatilho de trabalho na variável $t 1. Ele canaliza as propriedades para o ForEach-Object cmdlet, que compara cada propriedade com as propriedades do gatilho de trabalho na $t2 variável por nome. Em seguida, o comando canaliza as propriedades diferentes para o Format-List cmdlet, que as exibe em uma lista. A saída indica que, embora os acionadores de trabalho pareçam ser os mesmos, o HelpFiles acionador de trabalho inclui um atraso aleatório de três (3) minutos.

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 Get-ScheduledJob cmdlet.

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 obtenha objetos ScheduledJob , como um Get-ScheduledJob comando. Você também pode canalizar objetos 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

Especifique o nome de um trabalho agendado. Get-JobTrigger Obtém o gatilho de trabalho do trabalho agendado especificado. Há suporte para caracteres curinga.

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

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 especificado. Insira as IDs de gatilho de um ou mais gatilhos de trabalho de uma tarefa agendada. Use esse parâmetro quando o trabalho agendado especificado pelos parâmetros Name, ID ou 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 para esse cmdlet.

Saídas

ScheduledJobTrigger

Esse cmdlet retorna o gatilho do trabalho agendado.