共用方式為


Remove-JobTrigger

從排程的作業中刪除作業觸發程式。

語法

JobDefinition (預設值)

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

JobDefinitionName

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

JobDefinitionId

Remove-JobTrigger
    [-Id] <Int32[]>
    [-TriggerId <Int32[]>]
    [<CommonParameters>]

Description

Remove-JobTrigger cmdlet 從計劃作業中刪除作業觸發器。

作業觸發程式會定義啟動排程工作的週期性排程或條件。 若要管理作業觸發程式,請使用 New-JobTrigger、Add-JobTrigger、Set-JobTrigger 和 Set-ScheduledJob Cmdlet。

使用 NameIDInputObjectRemove-JobTrigger 的參數,來識別觸發程式從中移除的排程工作。 使用 TriggerID 參數來識別要刪除的工作觸發程式。 根據預設,Remove-JobTrigger 會刪除排程作業的所有作業觸發程式。

Remove-JobTrigger 是 Windows PowerShell 中包含的 PSScheduledJob 模組中作業排程 Cmdlet 的其中一個集合。

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

此 Cmdlet 已在 Windows PowerShell 3.0 中引進。

範例

範例 1:刪除所有作業觸發程式

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

此命令會從具有以 Test 開頭之名稱的排程作業中刪除所有作業觸發程式。

範例 2:刪除選取的作業觸發程式

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

此命令只會從 BackupArchive 排程工作中刪除第三個觸發程式 (ID = 3)。

範例 3:刪除所有排程作業的 AtStartup 作業觸發程式

PS C:\> 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 函式包含單一命令。 命令會使用 Get-ScheduledJob Cmdlet 來取得本機電腦上的排程工作。 管線運算子 (|) 會將排程的工作傳送至 Get-JobTrigger Cmdlet,此 Cmdlet 會從每個排程工作取得所有作業觸發程式。 管道作員將作業觸發器發送到 Where-Object cmdlet,該 cmdlet 選擇作業觸發器的 Frequency 屬性值等於 AtStartup 的作業觸發器。

JobTrigger 物件具有 JobDefinition 屬性,其中包含其觸發的排程工作。 命令的其餘部分會使用該有價值的功能。

管線運算符會將 AtStartup 作業觸發程式傳送至 ForEach-Object Cmdlet,此 Cmdlet 會在每個 AtStartup 觸發程式上執行 Remove-JobTrigger 命令。 Remove-JobTriggerInputObject 參數的值是作業觸發器的 JobDefinition 屬性中的計劃作業。 TriggerID 參數的值是作業觸發程式的 ID 屬性中的識別碼。

範例 4:從遠端排程工作刪除作業觸發程式

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

此命令會從 Server01 電腦上的 Inventory 作業中刪除第一個作業觸發程式。

該命令使用 Invoke-Command cmdlet 在 Server01 計算機上運行 Remove-JobTrigger cmdlet。 Remove-JobTrigger cmdlet 使用 ID 參數來標識 Inventory 計劃作業,並使用 TriggerID 參數來指定第一個觸發器。 當多個排程工作具有相同或類似名稱時,標識子 參數特別有用。

參數

-Id

指定排程工作的識別碼。 Remove-JobTrigger 會從指定的排程工作中刪除作業觸發程式。

若要取得本機電腦或遠端電腦上的排程工作識別碼,請使用 Get-ScheduledJob Cmdlet。

參數屬性

類型:

Int32[]

預設值:None
支援萬用字元:False
不要顯示:False

參數集

JobDefinitionId
Position:0
必要:True
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-InputObject

指定排程的工作。 輸入包含 ScheduledJob 物件的變數,或輸入命令或表達式,以取得 ScheduledJob 物件,例如 Get-ScheduledJob 命令。 您也可以使用管線 ScheduledJob 物件,Remove-JobTrigger

參數屬性

類型:

ScheduledJobDefinition[]

預設值:None
支援萬用字元:False
不要顯示:False

參數集

JobDefinition
Position:0
必要:True
來自管線的值:True
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Name

指定排程工作的名稱。 Remove-JobTrigger 會從指定的排程工作中刪除作業觸發程式。 支援通配符。

若要取得本機電腦或遠端電腦上的排程工作名稱,請使用 Get-ScheduledJob Cmdlet。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:False
不要顯示:False

參數集

JobDefinitionName
Position:0
必要:True
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-TriggerId

只刪除指定的作業觸發程式。 根據預設,Remove-JobTrigger 會從排程的工作中刪除所有觸發程式。 當排程的工作有多個作業觸發程式時,請使用此參數。

輸入排程作業之一或多個作業觸發程式的觸發程式標識碼。 如果您指定了多個計劃作業, 則 Remove-JobTrigger 將從所有計劃作業中刪除具有指定 ID 的作業觸發器。

參數屬性

類型:

Int32[]

預設值:All triggers
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters

輸入

ScheduledJobDefinition

您可以使用管線將排程的工作傳送至 Remove-JobTrigger Cmdlet。

輸出

None

Cmdlet 不會產生任何輸出。