我有一个批处理文件脚本,它启动一个程序(bat),在X秒之后,批处理脚本关闭程序(exe)并重新启动 it。
这是我的密码:
:loop
start "1.bat" "C:\1\1.bat"
Timeout 10
taskkill /f /im program.exe
goto loop如果程序结束,我希望Cmd.exe窗口关闭,但只有"1.bat“窗口应该关闭。我无法在任务管理器中为我的"1.bat“进程找到一个指定的cmd窗口来关闭它。
如果我用& exit关闭programm.exe,批处理不会重新启动!
发布于 2018-02-04 14:27:02
你可以做两件事之一。
1-如果您可以访问1.bat (即它不是只读的或实际上不是.exe),那么在它运行program.exe之后添加exit。
2.否则,如果由于任何原因无法修改1.bat,则可能需要添加以下命令行:
taskkill /FI "IMAGENAME eq cmd.exe" /FI "WINDOWTITLE eq 1.bat"因此,批处理脚本如下所示:
:loop
start "1.bat" "C:\1\1.bat"
Timeout 10
taskkill /f /im program.exe
taskkill /FI "IMAGENAME eq cmd.exe" /FI "WINDOWTITLE eq 1.bat"
goto loop或者类似的。基本上,/FI是过滤器开关,您可以指定基于"IMAGENAME“( equals "cmd.exe")和"WINDOWTITLE”( equals "1.bat")进行筛选。
https://stackoverflow.com/questions/48608608
复制相似问题