我有一个.bat
文件来运行一些程序(Apache httpd、Tomcat 等)。这些程序有自己的窗口,如果我在文件中输入以下内容.bat
:
../apache/bin/httpd.exe
../tomcat/bin/catalina.exe
...
当运行时我收到许多提示窗口,我该如何防止这种情况发生?
答案1
在批处理文件的开头添加:
@echo off
批处理文件中的命令实际上是start
start /B ../apache/bin/httpd.exe
start /B ../tomcat/bin/catalina.exe
/B:启动应用程序而不创建新窗口。在这种情况下,^C 将被忽略 - ^Break 是中断应用程序的唯一方法
答案2
解决这个问题的另一种方法是使用 CHP http://www.commandline.co.uk/chp/
该程序运行一个隐藏进程并通过返回码返回其 PID。然后您可以使用此 pid 通过 taskkill 关闭该进程。