【发布时间】:2017-06-02 01:30:58
【问题描述】:
在 Powershell 中,我使用命令 Register-ScheduledJob -ScriptBlock {...} 创建了一个 ScheduledJob。这个 ScheduledJob 执行一个 ScriptBlock。如何从 ScriptBlock 中检索当前运行的 ScheduledJob 的名称?
例如
Register-ScheduledJob -ScriptBlock { $CurrentScheduledJob | Out-File -FilePath ScheduledJob.txt}
Windows 任务计划程序中的任务正在运行命令:
powershell.exe -NoLogo -NonInteractive -WindowStyle Hidden -Command "导入模块 PSScheduledJob; $jobDef = [Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition]::LoadFromStore('asdfdsafsdf', 'C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\Windows\PowerShell\ScheduledJobs'); $jobDef.Run()"
我试图保存变量 $jobDef 但它是空的。
谢谢
【问题讨论】:
-
也许 $CurrentScheduledJob.Name 会起作用。您应该提供更多代码来指示 $CurrentScheduledJob 的来源。
-
$CurrentScheduledJob 实际上并不存在。抱歉,如果不清楚。
标签: powershell