Tim*_*ett 3 windows cmd batch-file
我试图运行批处理文件,start /high仍然得到返回/退出代码,即%ERRORLEVEL%.问题似乎是命令START不返回批处理文件返回的退出代码.
我们有一个简单的批处理文件用于测试命名BatFileThatReturnsOne.bat.
内容BatFileThatReturnsOne.bat是
EXIT /B 1
Run Code Online (Sandbox Code Playgroud)
我们这样称呼:
start /high /wait BatFileThatReturnsOne.bat
Run Code Online (Sandbox Code Playgroud)
但无论批处理文件返回什么,执行start永远不会有%ERRORLEVEL%0(零)以外的任何东西.
这实际上是由CloudFormation中的cfn-init调用的,但这可能不相关,因为我们可以从命令行窗口重现它.
实际的电话是:
cmd.exe /C start /high /wait BatFileThatReturnsOne.bat
Run Code Online (Sandbox Code Playgroud)
如何将start其设置为%ERRORLEVEL%0(零)以外的其他值?
直接从cmd您可以使用的窗口或批处理文件
start /high /wait cmd /c BatFileThatReturnsOne.bat
Run Code Online (Sandbox Code Playgroud)
但是如果您需要启动cmd实例来执行启动批处理文件的启动命令,那么您可以使用
cmd /v /e /c" start /high /wait cmd /c launched.cmd & exit ^!errorlevel^!"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6600 次 |
| 最近记录: |