共用方式為


Disable-JobTrigger

停用排程工作的工作觸發程式。

語法

Disable-JobTrigger
       [-InputObject] <ScheduledJobTrigger[]>
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

Disable-JobTrigger Cmdlet 會暫時停用排程工作的工作觸發程式。 停用會保留所有作業觸發程序屬性,但會防止作業觸發程序啟動排程的工作。

若要使用此 Cmdlet,請使用 Get-JobTrigger Cmdlet 來取得作業觸發程式。 然後使用管線將作業觸發程式傳送至 Disable-JobTrigger 或使用其 InputObject 參數。

若要停用作業觸發程式,Disable-JobTrigger Cmdlet 會將作業觸發程式的 Enabled 屬性設定為$False。 若要重新啟用作業觸發程式,請使用 Enable-JobTrigger Cmdlet,它會將作業觸發程式的 Enabled 屬性設定為 $True。 停用作業觸發程式並不會停用排程工作,例如由 Disable-ScheduledJob Cmdlet 完成,但如果您停用所有作業觸發程式,效果就與停用排程工作相同。

如果您停用排程工作或停用排程工作的所有作業觸發程式,您仍然可以使用 Start-Job Cmdlet 啟動作業,或使用停用的排程工作作為範本。

Disable-ScheduledJob 是 Windows PowerShell 中 PSScheduledJob 模組中作業排程 Cmdlet 的其中一個集合。

如需排程工作的詳細資訊,請參閱 PSScheduledJob 模組中的 About 主題。 匯入 PSScheduledJob 模組,然後輸入:Get-Help about_Scheduled* 或查看about_Scheduled_Jobs。

此 Cmdlet 已在 Windows PowerShell 3.0 中引進。

範例

範例 1:停用作業觸發程式

PS C:\> Get-JobTrigger -Name "Backup-Archives" -TriggerID 1 | Disable-JobTrigger

此命令會停用本機計算機上 Backup-Archives 排程工作的第一個觸發程式 (ID=1)。

命令會使用 Get-JobTrigger Cmdlet 來取得作業觸發程式。 管線運算符會將作業觸發程式傳送至停用 Disable-JobTrigger Cmdlet,以停用它。

範例 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

這些命令會停用兩個排程工作的所有作業觸發程式,並顯示結果。

範例 3:在遠端電腦上停用排程工作的工作觸發程式

PS C:\> Invoke-Command -ComputerName Server01 {Get-JobTrigger -Name DeployPackage | Where-Object {$_.Frequency -eq "Daily"} | Disable-JobTrigger}

此命令會停用 Server01 遠端電腦上的 DeployPackage 排程作業上的每日作業觸發程式。

此命令會使用 Invoke-Command Cmdlet 在 Server01 計算機上執行命令。 遠端命令會使用 Get-JobTrigger Cmdlet 來取得 DeployPackage 排程作業的作業觸發程式。 管線運算符會將作業觸發程式傳送至 Where-Object Cmdlet,而 Cmdlet 只會傳回每日作業觸發程式。 管線運算符會將每日作業觸發程式傳送至停用 Disable-JobTrigger Cmdlet,以停用它們。

參數

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

類型:SwitchParameter
別名:cf
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

-InputObject

指定要停用的工作觸發程式。 輸入變數,其中包含 ScheduledJobTrigger 物件,或輸入 ScheduledJobTrigger 物件的命令或表達式,例如 Get-JobTrigger 命令。 您也可以使用管線 將 scheduledJobTrigger 物件傳送至 Disable-JobTrigger

類型:ScheduledJobTrigger[]
Position:0
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-PassThru

會傳回 物件,代表您正在使用的專案。 根據預設,此 Cmdlet 不會產生任何輸出。

類型:SwitchParameter
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 Cmdlet 未執行。

類型:SwitchParameter
別名:wi
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

輸入

ScheduledJobTrigger

您可以使用管線將作業觸發程式傳送至 Disable-JobTrigger

輸出

None

此 Cmdlet 不會產生任何輸出。

備註

  • 如果您停用已停用的工作觸發程式,Disable-JobTrigger 不會產生錯誤或警告。