如何在任务管理器中识别正在运行的批处理文件?

Nim*_*oud 3 windows task-manager batch scheduled-tasks command-line

我将一些批处理文件作为 SYSTEM(作为服务)运行,它们在任务列表中显示为 cmd.exe。有时我需要终止其中一个,但我无法决定终止哪个 cmd.exe。

加; 我运行许多批处理文件作为计划任务,都显示为 cmd.exe(使用我的帐户)

如何标记批处理文件,以便在任务管理器中识别它?

sti*_*ijn 10

打开任务管理器,单击进程选项卡,然后选择View->Select Columns...。打开复选框Command Line。现在任务管理器将向您显示每个 cmd.exe 正在运行的内容。对于批处理文件,这看起来像

cmd /c ""C:\path\to\test.bat""
Run Code Online (Sandbox Code Playgroud)

对于确保只有一个 instane 可以运行的问题,这个相当肮脏的技巧有效:

@echo off

tasklist /v | find /I /c "MyUniqueTitle" > nul
if "%ERRORLEVEL%" == "0" goto ErrorAlreadyRunning

title MyUniqueTitle
echo "Running as Single Instance!"
goto end


:ErrorAlreadyRunning
echo "ErrorAlreadyRunning"

:end
pause
Run Code Online (Sandbox Code Playgroud)