Get-ScheduledJob

获取本地计算机上的计划作业。

语法

Get-ScheduledJob
   [[-Id] <Int32[]>]
   [<CommonParameters>]
Get-ScheduledJob
   [-Name] <String[]>
   [<CommonParameters>]

说明

Get-ScheduledJob cmdlet 获取本地计算机上的计划作业。 Get-ScheduledJob 仅获取当前用户使用 Register-ScheduledJob cmdlet 创建的计划作业。

尽管使用 Register-ScheduledJob cmdlet 创建的作业会显示在任务计划程序中,但 Get-ScheduledJob 仅获取计划作业。 它不会获取在任务计划程序中创建的计划任务。

不使用参数时,Get-ScheduledJob 获取计算机上的所有计划作业。 可以使用 Get-ScheduledJob 的参数,按 ID 或名称获取计划作业并对其进行检查,或者通过管道将它们传递给其他 cmdlet。

Get-ScheduledJob 是 PSScheduledJob 模块(包含在 Windows PowerShell 中)中的一系列作业计划 cmdlet 之一。

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

此 cmdlet 是在 Windows PowerShell 3.0 中引入的。

示例

示例 1:获取所有计划作业

此示例获取本地计算机上的所有计划作业。

Get-ScheduledJob

示例 2:按名称获取计划作业

此示例获取计算机上名称中包含 Backup 或 Archive 的所有计划作业。 你可通过此命令格式搜索特定作业。

Get-ScheduledJob -Name *Backup*, *Archive*

示例 3:获取远程计算机上的计划作业

此示例获取某个文本文件中列出的计算机上的所有计划作业。

Invoke-Command -ComputerName (Get-Content Servers.txt) {Get-ScheduledJob}

该命令使用 Invoke-Command cmdlet 在每台计算机上运行 Get-ScheduleJob 命令。

示例 4:通过管道将计划作业传递给其他 cmdlet

此示例获取指定计划作业的作业触发器

Get-ScheduledJob DailyBackup, WeeklyBackup | Get-JobTrigger

它使用 Get-ScheduledJob cmdlet 获取计划作业,并使用 Get-JobTrigger cmdlet 获取计划作业的作业触发器。

参数

-Id

仅获取具有指定标识号 (ID) 的计划作业。 在计算机上输入一个或多个计划作业的 ID。 默认情况下,Get-ScheduledJob 获取计算机上的所有计划作业。

类型:Int32[]
Position:0
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Name

仅获取具有指定名称的计划作业。 在计算机上输入一个或多个计划作业的名称。 支持通配符。 默认情况下,Get-ScheduledJob 获取计算机上的所有计划作业。

类型:String[]
Position:0
默认值:None
必需:True
接受管道输入:False
接受通配符:False

输入

None

不能通过管道将对象传递给此 cmdlet。

输出

ScheduledJobDefinition

此 cmdlet 返回计划作业的定义。

备注

  • 每个计划作业都保存在本地计算机上 $HOME\AppData\Local\Microsoft\Windows\PowerShell\ScheduledJobs 目录的子目录中。 该子目录是按计划作业命名的,并且包含计划作业的 XML 文件以及该计划作业的执行历史记录。 有关磁盘上计划作业的详细信息,请参阅 about_Scheduled_Jobs_Advanced
  • 在 Windows PowerShell 中创建的计划作业会显示在任务计划程序 Library\Microsoft\Windows\PowerShell\ScheduledJobs 文件夹中的任务计划程序中。 你可以使用任务计划程序查看和编辑计划作业。
  • 你可以使用任务计划程序、SchTasks.exe 命令行工具和任务计划程序 cmdlet 来管理使用计划作业 cmdlet 创建的计划作业。 但是,你无法使用 Scheduled Job cmdlet 来管理在任务计划程序中创建的任务。