次の方法で共有


Remove-JobTrigger

スケジュールされたジョブからジョブ トリガーを削除します。

構文

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

説明

Remove-JobTrigger コマンドレットは、スケジュールされたジョブからジョブ トリガーを削除します。

ジョブ トリガーは、スケジュールされたジョブを開始するための定期的なスケジュールまたは条件を定義します。 ジョブ トリガーを管理するには、New-JobTrigger、Add-JobTrigger、Set-JobTrigger、および Set-ScheduledJob コマンドレットを使用します。

トリガーが削除されるスケジュールされたジョブを識別するには、Remove-JobTriggerNameID、または InputObject パラメーターを使用します。 TriggerID パラメーターを使用して、削除するジョブ トリガーを識別します。 既定では、 Remove-JobTrigger はスケジュールされたジョブのすべてのジョブ トリガーを削除します。

Remove-JobTrigger は、Windows PowerShell に含まれる PSScheduledJob モジュールのジョブ スケジューリング コマンドレットのコレクションの 1 つです。

スケジュールされたジョブの詳細については、PSScheduledJob モジュールの概要トピックを参照してください。 PSScheduledJob モジュールをインポートし、「 Get-Help about_Scheduled* 」と入力するか、 about_Scheduled_Jobsを参照してください。

このコマンドレットは、Windows PowerShell 3.0 で導入されました。

例 1: すべてのジョブ トリガーを削除する

Remove-JobTrigger -Name "Test*"

このコマンドは、Test で始まる名前を持つスケジュールされたジョブからすべてのジョブ トリガーを削除します。

例 2: 選択したジョブ トリガーを削除する

Remove-JobTrigger -Name "BackupArchive" -TriggerID 3

このコマンドは、スケジュールされたジョブ BackupArchive から 3 番目のトリガー (ID = 3) のみを削除します。

例 3: スケジュールされたすべてのジョブから AtStartup ジョブ トリガーを削除する

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

この関数は、ローカル コンピューター上のすべてのジョブからすべての AtStartup ジョブ トリガーを削除します。 関数を使用するには、セッションで関数を実行し、「 Delete-AtStartup」と入力します。

Delete-AtStartup関数には、1 つのコマンドが含まれています。 このコマンドでは、 Get-ScheduledJob コマンドレットを使用して、ローカル コンピューターでスケジュールされたジョブを取得します。 パイプライン演算子 (|) は、スケジュールされたジョブを Get-JobTrigger コマンドレットに送信します。このコマンドレットは、スケジュールされた各ジョブからすべてのジョブ トリガーを取得します。 パイプライン演算子は、ジョブ トリガーを Where-Object コマンドレットに送信します。このコマンドレットは、ジョブ トリガーの Frequency プロパティの値が AtStartup であるジョブ トリガーを選択します。

JobTrigger オブジェクトには、トリガーするスケジュールされたジョブを含む JobDefinition プロパティがあります。 このコマンドの残りの部分では、その便利な機能を使用しています。

パイプライン演算子は、atStartup ジョブ トリガーを ForEach-Object コマンドレットに送信します。このコマンドレットは、各 AtStartup トリガーで Remove-JobTrigger コマンドを実行します。 Remove-JobTriggerInputObject パラメーターの値は、ジョブ トリガーの JobDefinition プロパティのスケジュールされたジョブです。 TriggerID パラメーターの値は、ジョブ トリガーの ID プロパティの識別子です。

例 4: リモートのスケジュールされたジョブからジョブ トリガーを削除する

Invoke-Command -ComputerName "Server01" { Remove-JobTrigger -ID 38 -TriggerID 1 }

このコマンドは、Server01 コンピューター上の Inventory ジョブから最初のジョブ トリガーを削除します。

このコマンドでは、 Invoke-Command コマンドレットを使用して、Server01 コンピューターで Remove-JobTrigger コマンドレットを実行します。 Remove-JobTrigger コマンドレットは、ID パラメーターを使用して、Inventory のスケジュールされたジョブと、最初のトリガーを指定する TriggerID パラメーターを識別します。 ID パラメーターは、複数のスケジュールされたジョブの名前が同じまたは類似している場合に特に便利です。

パラメーター

-Id

スケジュールされたジョブの識別番号を指定します。 Remove-JobTrigger は、指定されたスケジュールされたジョブからジョブ トリガーを削除します。

ローカル コンピューターまたはリモート コンピューターでスケジュールされたジョブの識別番号を取得するには、 Get-ScheduledJob コマンドレットを使用します。

型:Int32[]
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-InputObject

スケジュールされたジョブを指定します。 ScheduledJob オブジェクトを含む変数を入力するか、Get-ScheduledJob コマンドなどのScheduledJob オブジェクトを取得するコマンドまたは式を入力します。 パイプ ScheduledJob オブジェクトを Remove-JobTriggerすることもできます。

型:ScheduledJobDefinition[]
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Name

スケジュールされたジョブの名前を指定します。 Remove-JobTrigger は、指定されたスケジュールされたジョブからジョブ トリガーを削除します。 ワイルドカードを利用できます。

ローカル コンピューターまたはリモート コンピューターでスケジュールされたジョブの名前を取得するには、 Get-ScheduledJob コマンドレットを使用します。

型:String[]
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-TriggerId

指定されたジョブ トリガーのみを削除します。 既定では、 Remove-JobTrigger はスケジュールされたジョブからすべてのトリガーを削除します。 スケジュールされたジョブに複数のジョブ トリガーが設定されている場合に、このパラメーターを使用します。

スケジュールされたジョブの 1 つまたは複数のジョブ トリガーの ID を入力します。 複数のスケジュールされたジョブを指定した場合、 Remove-JobTrigger は、指定した ID を持つジョブ トリガーをすべてのスケジュールされたジョブから削除します。

型:Int32[]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

ScheduledJobDefinition

スケジュールされたジョブをこのコマンドレットにパイプできます。

出力

None

このコマンドレットは、出力を返しません。