如何检测特定的计划任务是否正在运行?

如何检测特定的计划任务是否正在运行?

我的 Windows 2008 Server 上有 2 个特定的计划任务

  • 第一个每天运行一次
  • 第二次每五分钟运行一次。

在第二个任务中,这基本上是一个 php 脚本,我想检查第一个任务是否正在运行,如果是,则退出/避免运行。

所以问题是:有没有办法从命令行检查特定任务是否正在运行?

答案1

使用普通的 MSDOS,您可以执行以下操作:

schtasks /query /TN my-task-name /FO LIST

并提取输出。作为示例,我这样做:

for /F "usebackq tokens=2,*" %%f in (`schtasks /query /TN my-task-name /FO LIST ^| findstr Status`) do set status=%%f %%g
if "%status%" EQU "Running" goto :eof

答案2

您可以使用获取计划任务获取计划任务信息PowerShell 中的命令。

相关内容