我有6个不同的批处理脚本,我同时在一起运行.问题是,很难在
Windows任务管理器中区分它们,因为进程始终只是cmd.exe我想知道是否有办法将批处理脚本的进程名称更改为其他内容,以便每个脚本都可以更容易识别.
到目前为止,我已经对这个主题做了很多研究,我唯一的领导是在system32中创建一个cmd.exe的副本,该副本具有不同的名称,我选择的一个.问题是,我不知道如何让我的bash脚本使用这个具有不同名称的新可执行文件,而不是默认的cmd.exe
要求:必须仅使用内置Windows功能.如果可能的话,我不想安装任何其他程序.
解决方法
你可以用下面的子程序之类的东西来做.第一个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"