[英]How to pause a batch script on a command
我有一个下面的批处理脚本:
@echo off
cd C:\Program Files (x86)\Project
CALL init_env.bat
cd C:\Users\Documents\Project\Release
START app.exe -ver 133
echo application has been stopped
这将启动app.exe
。 在终端上它还说application has been stopped
。 有什么方法可以在执行START app.exe -ver 133
行后暂停脚本,并且仅在应用程序因某种原因关闭或崩溃时echo application has been stopped
。
谢谢
应该删除命令START
,因为它将可执行app.exe
作为与处理批处理文件的cmd.exe
并行执行的单独进程启动。 然后cmd.exe
处理批处理文件启动app.exe
并等待批处理文件的进一步处理,直到app.exe
终止。
还建议始终将文件/文件夹字符串包含在"
中,即使不是真的需要。因此应该使用cd /D "C:\Program Files (x86)\Project"
并call "init_env.bat"
甚至更好call "C:\Program Files (x86)\Project\init_env.bat"
,如果这也有效,因为批处理文件init_env.bat
被写入独立于执行时的当前目录。最后cd /D "C:\Users\Documents\Project\Release"
和"app.exe" -ver 133
应写入批处理文件。
在命令提示符下运行 window cd /?
有关命令CD的帮助和选项/D
的含义。
start /?
输出 cmd window 中命令START的帮助。
@echo off
call "C:\Program Files (x86)\Project\init_env.bat"
cd /D "C:\Users\Documents\Project\Release"
"app.exe" -ver 133
echo application has been stopped
另请参阅预定义的Windows 环境变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.