Disable-JobTrigger
スケジュールされたジョブのジョブ トリガーを無効にします。
構文
Disable-JobTrigger
[-InputObject] <ScheduledJobTrigger[]>
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Disable-JobTrigger コマンドレットは、スケジュールされたジョブのジョブ トリガーを一時的に無効にします。 無効にすると、ジョブ トリガーのすべてのプロパティが保持されますが、ジョブ トリガーがスケジュールされたジョブを開始できなくなります。
このコマンドレットを使用するには、Get-JobTrigger コマンドレットを使用してジョブ トリガーを取得します。
次に、ジョブ トリガーをパイプして Disable-JobTrigger を
ジョブ トリガーを無効にするには、Disable-JobTrigger コマンドレットによって、ジョブ トリガーの Enabled プロパティが$Falseに設定されます。 ジョブ トリガーを再度有効にするには、Enable-JobTrigger コマンドレットを使用して、ジョブ トリガーの Enabled プロパティを$Trueに設定します。 ジョブ トリガーを無効にしても、Disable-ScheduledJob コマンドレットによって実行されるなど、スケジュールされたジョブは無効になりませんが、すべてのジョブ トリガーを無効にすると、スケジュールされたジョブを無効にした場合と同じ効果が得られます。
スケジュールされたジョブを無効にするか、スケジュールされたジョブのすべてのジョブ トリガーを無効にした場合でも、Start-Job コマンドレットを使用してジョブを開始するか、無効にされたスケジュールされたジョブをテンプレートとして使用できます。
Disable-ScheduledJob は、Windows PowerShell に含まれる PSScheduledJob モジュール内のジョブ スケジューリング コマンドレットのコレクションの 1 つです。
スケジュールされたジョブの詳細については、PSScheduledJob モジュールの About トピックを参照してください。
PSScheduledJob モジュールをインポートし、「Get-Help about_Scheduled*
」と入力するか、about_Scheduled_Jobsを参照してください。
このコマンドレットは、Windows PowerShell 3.0 で導入されました。
例
例 1: ジョブ トリガーを無効にする
PS C:\> Get-JobTrigger -Name "Backup-Archives" -TriggerID 1 | Disable-JobTrigger
このコマンドは、ローカル コンピューターでスケジュールされた Backup-Archives ジョブの最初のトリガー (ID=1) を無効にします。
このコマンドでは、Get-JobTrigger コマンドレットを使用してジョブ トリガーを取得します。 パイプライン演算子は、ジョブ トリガーを無効にする Disable-JobTrigger コマンドレットに送信します。
例 2: すべてのジョブ トリガーを無効にする
The first command uses the Get-ScheduledJob cmdlet to get the Backup-Archives and Inventory scheduled jobs. A pipeline operator (|) sends the scheduled jobs to the Get-JobTrigger cmdlet, which gets all job triggers of the scheduled jobs. Another pipeline operator sends the job triggers to the **Disable-JobTrigger** cmdlet, which disables them.The first command uses the **Get-ScheduledJob** cmdlet to get the jobs, because its *Name* parameter takes multiple names.
PS C:\> Get-ScheduledJob -Name "Backup-Archives,Inventory" | Get-JobTrigger | Disable-JobTrigger
The second command displays the results. The command repeats the **Get-ScheduledJob** and **Get-JobTrigger** command. A pipeline operator sends the job triggers to the Format-Table cmdlet, which displays the job triggers in a table. The **Format-Table** command adds a JobName property that displays the value of the Name property of the scheduled job in the JobDefinition property of the job trigger object.
PS C:\> Get-ScheduledJob -Name "Backup-Archives,Inventory" | Get-JobTrigger | Format-Table -Property ID, Frequency, At, DaysOfWeek, Enabled, @{Label="JobName";Expression={$_.JobDefinition.Name}} -AutoSize
Id Frequency At DaysOfWeek Enabled JobName
-- --------- -- ---------- ------- -------
1 Weekly 9/28/2011 3:00:00 AM {Monday} False Backup-Archive
2 Daily 9/29/2011 1:00:00 AM False Backup-Archive
1 Weekly 10/20/2011 11:00:00 PM {Friday} False Inventory
1 Weekly 11/2/2011 2:00:00 PM {Monday} False Inventory
これらのコマンドは、2 つのスケジュールされたジョブのすべてのジョブ トリガーを無効にし、結果を表示します。
例 3: リモート コンピューターでスケジュールされたジョブのジョブ トリガーを無効にする
PS C:\> Invoke-Command -ComputerName Server01 {Get-JobTrigger -Name DeployPackage | Where-Object {$_.Frequency -eq "Daily"} | Disable-JobTrigger}
このコマンドは、Server01 リモート コンピューター上の DeployPackage スケジュールされたジョブの毎日のジョブ トリガーを無効にします。
このコマンドでは、Invoke-Command コマンドレットを使用して、Server01 コンピューターでコマンドを実行します。 リモート コマンドは、Get-JobTrigger コマンドレットを使用して、DeployPackage のスケジュールされたジョブのジョブ トリガーを取得します。 パイプライン演算子は、ジョブ トリガーを Where-Object コマンドレットに送信し、毎日のジョブ トリガーのみを返します。 パイプライン オペレーターは、毎日のジョブ トリガーを無効にする Disable-JobTrigger コマンドレットに送信します。
パラメーター
-Confirm
コマンドレットを実行する前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-InputObject
無効にするジョブ トリガーを指定します。
ScheduledJobTrigger オブジェクト
型: | ScheduledJobTrigger[] |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-PassThru
作業中のアイテムを表すオブジェクトを返します。 既定では、このコマンドレットは出力を生成しません。
型: | SwitchParameter |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
ジョブ トリガーをパイプ処理して、Disable-JobTriggerを
出力
None
このコマンドレットは出力を生成しません。
メモ
- Disable-JobTrigger では、既に無効になっているジョブ トリガーを無効にしてもエラーや警告は生成されません。
関連リンク
- スケジュール済みジョブについて
- Add-JobTrigger
- Disable-JobTrigger
- Disable-ScheduledJob
- Enable-JobTrigger
- Enable-ScheduledJob
- Get-JobTrigger
- Get-ScheduledJob
- Get-ScheduledJobOption
- New-JobTrigger
- New-ScheduledJobOption
- Register-ScheduledJob
- Remove-JobTrigger
- Set-JobTrigger
- Set-ScheduledJob
- Set-ScheduledJobOption
- Unregister-ScheduledJob