【问题标题】:Get more info from Scheduled Tasks in powershell从 powershell 中的计划任务获取更多信息
【发布时间】:2021-05-25 18:36:22
【问题描述】:

有没有一种方法可以从 PowerShell 中查看所有 ScheduledTask 属性,而无需打开对用户不太友好的 taskschd.msc:

我设法用New-ScheduledTask 和Register-ScheduledTask 很好地创建了作业,但我无法查看我在New-ScheduledTask 中使用的操作、触发器、主体和设置等参数

以下是我设法得到的:

Get-ScheduledTask -TaskName "test22 BAM-AT" -Verbose

TaskPath                                       TaskName                          State
--------                                       --------                          -----
\                                              test22 BAM-AT                     Ready


Get-ScheduledTaskInfo -TaskName "test22 BAM-AT" -Verbose


LastRunTime        : 2/23/2021 1:44:44 PM
LastTaskResult     : 0
NextRunTime        : 2/23/2021 4:00:00 PM
NumberOfMissedRuns : 0
TaskName           : test22 BAM-AT
TaskPath           :
PSComputerName     :

【问题讨论】:

  • Get-ScheduledTask -TaskName "test22 BAM-AT" -Verbose | Select * 将显示所有属性,包括操作、触发器、主体和设置。您可以通过使用 (Get-ScheduledTask -TaskName "test22 BAM-AT" -Verbose | Select *).actions 将 .actions 更改为所需的属性来查看这些属性。
  • 感谢使用' ... | select -ExpandProperty Actions' 展开Action
  • 以上 cmets 应该在答案中。他们工作得很好,并澄清了一些非常令人困惑的事情。

标签: windows powershell scheduled-tasks


【解决方案1】:

Cim 基础 ScheduledTasks 模块不会预先公开该级别的详细信息。但是,您可以使用它的另一个 cmdlet Export-ScheduledTask 来获取 XML 任务定义并将其解析为对象。

例子:

$TaskXML = [XML]((Get-ScheduledTask)[0] |Export-ScheduledTask)
$TaskXML.Task.Triggers

显然你可能不得不四处寻找你想要的信息等等......

Export-ScheduledTask 返回在另一个系统上导入任务所需的所有 XML,因此它应该包含所有详细信息,只需提取,即可。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-09
    • 1970-01-01
    • 2014-09-14
    相关资源
    最近更新 更多