Partilhar via


Remove-JobTrigger

Exclua gatilhos de trabalho de trabalhos agendados.

Sintaxe

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

Description

O cmdlet Remove-JobTrigger exclui gatilhos de trabalho de trabalhos agendados.

Um gatilho de trabalho define uma agenda recorrente ou condições para iniciar um trabalho agendado. Para gerenciar gatilhos de trabalho, use os cmdlets New-JobTrigger, Add-JobTrigger, Set-JobTrigger e Set-ScheduledJob.

Use os parâmetros Name, IDou InputObject parâmetros de Remove-JobTrigger para identificar os trabalhos agendados dos quais os gatilhos são removidos. Use o parâmetro TriggerID para identificar os gatilhos de trabalho a serem excluídos. Por padrão, Remove-JobTrigger exclui todos os gatilhos de trabalho de um trabalho agendado.

Remove-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.

Este cmdlet foi introduzido no Windows PowerShell 3.0.

Exemplos

Exemplo 1: Excluir todos os gatilhos de trabalho

PS C:\> Remove-JobTrigger -Name "Test*"

Este comando exclui todos os gatilhos de trabalho do trabalho agendado que têm nomes que começam com Test.

Exemplo 2: Excluir gatilhos de trabalho selecionados

PS C:\> Remove-JobTrigger -Name "BackupArchive" -TriggerID 3

Este comando exclui apenas o terceiro gatilho (ID = 3) do trabalho agendado BackupArchive.

Exemplo 3: Excluir gatilhos de trabalho AtStartup de todos os trabalhos agendados

PS C:\> function Delete-AtStartup
{
    Get-ScheduledJob | Get-JobTrigger | Where-Object {$_.Frequency -eq "AtStartup"} | ForEach-Object { Remove-JobTrigger -InputObject $_.JobDefinition -TriggerID $_.ID}
}

Esta função exclui todos os gatilhos de trabalho AtStartup de todos os trabalhos no computador local. Para usar a função, execute a função em sua sessão e digite Delete-AtStartup.

A função Delete-AtStartup contém um único comando. O comando usa o cmdlet Get-ScheduledJob para obter os trabalhos agendados no computador local. Um operador de pipeline (|) envia os trabalhos agendados para o cmdlet Get-JobTrigger, que obtém todos os gatilhos de trabalho de cada um dos trabalhos agendados. Um operador de pipeline envia os gatilhos de trabalho para o cmdlet Where-Object, que seleciona gatilhos de trabalho em que o valor da propriedade Frequency do gatilho de trabalho é igual a AtStartup.

objetos JobTrigger têm uma propriedade JobDefinition que contém o trabalho agendado que eles acionam. O restante do comando usa esse recurso valioso.

Um operador de pipeline envia os gatilhos de trabalho AtStartup para o cmdlet ForEach-Object, que executa um comando Remove-JobTrigger em cada gatilho AtStartup. O valor do parâmetro InputObject de Remove-JobTrigger é o trabalho agendado na propriedade JobDefinition do gatilho de trabalho. O valor do parâmetro TriggerID é o identificador na propriedade ID do gatilho de trabalho.

Exemplo 4: Excluir um gatilho de trabalho de um trabalho agendado remoto

PS C:\> Invoke-Command -ComputerName "Server01" { Remove-JobTrigger -ID 38 -TriggerID 1 }

Este comando exclui o primeiro gatilho de trabalho do trabalho de inventário no computador Server01.

O comando usa o cmdlet Invoke-Command para executar o cmdlet Remove-JobTrigger no computador Server01. O cmdlet Remove-JobTrigger usa o parâmetro ID para identificar o trabalho agendado Inventory e o parâmetro TriggerID para especificar o primeiro gatilho. O parâmetro ID é especialmente útil quando vários trabalhos agendados têm nomes iguais ou semelhantes.

Parâmetros

-Id

Especifica os números de identificação dos trabalhos agendados. Remove-JobTrigger exclui gatilhos de trabalho dos trabalhos agendados especificados.

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[]
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-InputObject

Especifica os trabalhos agendados. Insira uma variável que contenha objetos ScheduledJob ou digite um comando ou expressão que obtenha objetos ScheduledJob, como um comando Get-ScheduledJob. Você também pode canalizar objetos ScheduledJob para Remove-JobTrigger.

Tipo:ScheduledJobDefinition[]
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Name

Especifica os nomes dos trabalhos agendados. Remove-JobTrigger exclui os gatilhos de trabalho dos trabalhos agendados especificados. Curingas são suportados.

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

Tipo:String[]
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-TriggerId

Exclui apenas os gatilhos de trabalho especificados. Por padrão, Remove-JobTrigger exclui todos os gatilhos dos trabalhos agendados. Use esse parâmetro quando os trabalhos agendados tiverem vários gatilhos de trabalho.

Insira os IDs de gatilho de um ou mais gatilhos de trabalho de um trabalho agendado. Se você especificar vários trabalhos agendados, Remove-JobTrigger excluirá o gatilho de trabalho com a ID especificada de todos os trabalhos agendados.

Tipo:Int32[]
Position:Named
Default value:All triggers
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

ScheduledJobDefinition

Você pode canalizar trabalhos agendados para o cmdlet Remove-JobTrigger.

Saídas

None

O cmdlet não gera nenhuma saída.