使用不同的进程名称执行批处理文件

时间:2014-10-22 00:04:59

标签: windows batch-file process cmd taskmanager

我有6个不同的批处理脚本,我同时在一起运行。问题是,很难在Windows任务管理器中区分它们,因为该过程始终只是 cmd.exe 我想知道是否有办法将批处理脚本的进程名称更改为其他东西,以便每个脚本更容易识别。

到目前为止,我已就此主题做了大量研究,我唯一的领导是在system32中创建一个具有不同名称的 cmd.exe 的副本,我选择了一个。问题是,我不知道如何让我的bash脚本使用不同名称的新可执行文件,而不是默认的cmd.exe

要求:必须仅使用内置Windows功能。如果可能,我不想安装任何其他程序。

2 个答案:

答案 0 :(得分:2)

您可以使用下面的子程序来完成。第一个goto的原因是你完成后不会落入子程序。我合并了另一个FOR循环来遍历要检查的文件名列表。让我们先做到这一点。

Your existing bat file goes here
CALL :IsitRunning "SomeFileName"
The rest of your existing bat file goes here
GOTO :eof

:IsitRunning
REM 1=Filename
FOR /F "delims=" %%A in ('WMIC PROCESS WHERE NAME^='CMD.EXE' LIST FULL ^| FINDSTR /I "%~1" ^| FINDSTR /I /V WMIC') DO ECHO(%~1 is running
GOTO :eof

或者您可以从CMD提示符运行此命令。

wmic process WHERE NAME='cmd.exe' list full | findstr /i "SomeFileName.bat"

答案 1 :(得分:1)

您可以在任务管理器中查看命令行,将其打开查看菜单 - 选择列

如果要更改进程名称,则必须更改进程。所以你的方法只是方法。