Remove-JobTrigger
从计划作业中删除作业触发器。
语法
Remove-JobTrigger
[-TriggerId <Int32[]>]
[-InputObject] <ScheduledJobDefinition[]>
[<CommonParameters>]
Remove-JobTrigger
[-TriggerId <Int32[]>]
[-Name] <String[]>
[<CommonParameters>]
Remove-JobTrigger
[-TriggerId <Int32[]>]
[-Id] <Int32[]>
[<CommonParameters>]
说明
Remove-JobTrigger cmdlet 从计划作业中删除作业触发器。
作业触发器定义用于启动计划作业的定期计划或条件。 若要管理作业触发器,请使用 New-JobTrigger、Add-JobTrigger、Set-JobTrigger 和 Set-ScheduledJob cmdlet。
使用
Remove-JobTrigger 是 WINDOWS PowerShell 中包含的 PSScheduledJob 模块中作业计划 cmdlet 的集合之一。
有关计划作业的详细信息,请参阅 PSScheduledJob 模块中的“关于”主题。
导入 PSScheduledJob 模块,然后键入:Get-Help about_Scheduled*
或查看about_Scheduled_Jobs。
此 cmdlet 已在 Windows PowerShell 3.0 中引入。
示例
示例 1:删除所有作业触发器
PS C:\> Remove-JobTrigger -Name "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 选择作业触发器,其中作业触发器的值等于 AtStartup。
JobTrigger 对象具有 JobDefinition 属性,该属性包含触发的计划作业。 该命令的其余部分使用该有价值的功能。
管道运算符将 AtStartup 作业触发器发送到 ForEach-Object cmdlet,该 cmdlet 在每个 AtStartup 触发器上运行 Remove-JobTrigger 命令。 Remove-JobTrigger 的 InputObject 参数的值是作业触发器的 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 参数标识清单计划作业和 TriggerID 参数来指定第一个触发器。 当多个计划作业具有相同或相似名称时,ID 参数特别有用。
参数
-Id
指定计划作业的标识号。 Remove-JobTrigger 从指定的计划作业中删除作业触发器。
若要获取本地计算机或远程计算机上的计划作业的标识号,请使用 Get-ScheduledJob cmdlet。
类型: | Int32[] |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-InputObject
指定计划作业。 输入一个变量,其中包含 ScheduledJob 对象,或键入一个命令或表达式,该命令或表达式获取 ScheduledJob 对象,例如 Get-ScheduledJob 命令。 还可以通过管道 ScheduledJob 对象来 Remove-JobTrigger。
类型: | ScheduledJobDefinition[] |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-Name
指定计划作业的名称。 Remove-JobTrigger 从指定的计划作业中删除作业触发器。 支持通配符。
若要获取本地计算机或远程计算机上的计划作业的名称,请使用 Get-ScheduledJob cmdlet。
类型: | String[] |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-TriggerId
仅删除指定的作业触发器。 默认情况下,Remove-JobTrigger 从计划作业中删除所有触发器。 当计划作业具有多个作业触发器时,请使用此参数。
输入计划作业的一个或多个作业触发器的触发器 ID。 如果指定多个计划作业,Remove-JobTrigger 从所有计划作业中删除具有指定 ID 的作业触发器。
类型: | Int32[] |
Position: | Named |
默认值: | All triggers |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
可以通过管道将计划作业传递给 Remove-JobTrigger cmdlet。
输出
None
该 cmdlet 不生成任何输出。
相关链接
- about_Scheduled_Jobs
- 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
- Where-Object