Enable-ScheduledJob

启用计划作业。

语法

Definition (默认值)

Enable-ScheduledJob
    [-InputObject] <ScheduledJobDefinition>
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

DefinitionId

Enable-ScheduledJob
    [-Id] <Int32>
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

DefinitionName

Enable-ScheduledJob
    [-Name] <String>
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

说明

Enable-ScheduledJob cmdlet 重新启用已禁用的计划作业,例如使用 Disable-ScheduledJob cmdlet 禁用的作业。 启用的作业在触发时自动运行。

若要启用计划作业,Enable-ScheduledJob cmdlet 会将计划作业的 Enabled 属性设置为$True。

Enabled-ScheduledJob 是 Windows PowerShell 中包含的 PSScheduledJob 模块中的作业计划 cmdlet 集合之一。

有关计划作业的详细信息,请参阅 PSScheduledJob 模块中的“关于”主题。 导入 PSScheduledJob 模块,然后键入:Get-Help about_Scheduled* 或查看about_Scheduled_Jobs。

此 cmdlet 已在 Windows PowerShell 3.0 中引入。

示例

示例 1:启用计划作业

PS C:\> Enable-ScheduledJob -ID 2 -Passthru
Id         Name            Triggers        Command                                  Enabled
--         ----            --------        -------                                  -------
2          Inventory       {1, 2}          \\Srv01\Scripts\Get-FullInventory.ps1    True

此命令在本地计算机上启用 ID 为 2 的计划作业。 输出显示命令的效果。

示例 2:启用所有计划作业

PS C:\> Get-ScheduledJob | Enable-ScheduledJob -Passthru
Id         Name            Triggers        Command                                  Enabled
--         ----            --------        -------                                  -------
1          ArchiveProje... {}              C:\Scripts\Archive-DxProjects.ps1        True
2          Inventory       {1, 2}          \\Srv01\Scripts\Get-FullInventory.ps1    True
4          Test-HelpFiles  {1}             .\Test-HelpFiles.ps1                     True
5          TestJob         {1, 2}          .\Run-AllTests.ps1                       True

此命令在本地计算机上启用所有计划作业。 它使用 Get-ScheduledJob cmdlet 获取所有计划作业和 Enable-ScheduledJob cmdlet 来启用它们。

Enable-ScheduledJob 如果启用已启用的计划作业,则不会生成警告或错误,因此可以在没有条件的情况下启用所有计划作业。

示例 3:启用选定的计划作业

PS C:\> Get-ScheduledJob | Get-ScheduledJobOption | Where-Object {$_.RunWithoutNetwork} | ForEach-Object {Enable-ScheduledJob -InputObject $_.JobDefinition}

此命令启用不需要网络连接的计划作业。

该命令使用 Get-ScheduledJob cmdlet 获取计算机上的所有计划作业。 管道运算符将计划作业发送到 Get-ScheduledJobOption cmdlet,该 cmdlet 获取每个计划作业的作业选项。 每个作业选项对象都有一个 JobDefinition 属性,该属性包含关联的计划作业。 JobDefinition 属性用于完成命令。

该命令使用管道运算符 (|) 将作业选项发送到 Where-Object cmdlet,该 cmdlet 选择 RunWithoutNetwork 属性具有 True 值的计划作业选项对象($true)。 另一个管道运算符将选定的计划作业选项对象发送到 ForEach-Object cmdlet,该 cmdlet 在计划作业上以每个作业选项对象的 JobDefinition 属性的值运行 Enable-ScheduledJob 命令。

示例 4:在远程计算机上启用计划作业

PS C:\> Invoke-Command -ComputerName "Srv01,Srv10" -ScriptBlock {Enable-ScheduledJob -Name "Inventory"}

此命令在两台远程计算机(Srv01 和 Srv10)上启用在其名称中包含“test”的计划作业。

该命令使用 Invoke-Command cmdlet 在 Srv01 和 Srv10 计算机上运行 Enable-ScheduledJob 命令。 该命令使用 Enable-ScheduledJobName 参数在每台计算机上启用清单计划作业。

参数

-Confirm

在运行 cmdlet 之前,提示你进行确认。

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False
别名:cf

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Id

启用具有指定标识号(ID)的计划作业。 输入计划作业的 ID。

参数属性

类型:Int32
默认值:None
支持通配符:False
不显示:False

参数集

DefinitionId
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-InputObject

指定要启用的计划作业。 输入包含 ScheduledJobDefinition 的变量 对象或键入 ScheduledJobDefinition 对象(如 Get-ScheduledJob 命令)的命令或表达式。 还可以通过管道将 ScheduledJobDefinition 对象传递给 Enable-ScheduledJob

参数属性

类型:ScheduledJobDefinition
默认值:None
支持通配符:False
不显示:False

参数集

Definition
Position:0
必需:True
来自管道的值:True
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Name

启用具有指定名称的计划作业。 输入计划作业的名称。 支持通配符。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

DefinitionName
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-PassThru

返回一个对象,该对象表示你正在处理的项目。 默认情况下,此 cmdlet 不生成任何输出。

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-WhatIf

显示 cmdlet 运行时会发生什么情况。 命令脚本未运行。

参数属性

类型:SwitchParameter
默认值:False
支持通配符: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

可以通过管道将计划作业传递给 Enable-ScheduledJob

输出

None or Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

如果使用 Passthru 参数,Enable-ScheduledJob 将返回已启用的计划作业。 否则,此 cmdlet 不会生成任何输出。

备注

  • Enable-ScheduledJob 如果不使用它来启用已启用的计划作业,则不会生成警告或错误。