我有一个应用程序只能在Windows命令提示符下调用时正常工作。与输入/输出流有关。
所以我可以通过将它作为参数传递给cmd,从bash脚本中调用它。
cmd / c“badapp”
这样做很好 – 但是偶尔会发生网络问题,我没有得到任何反馈。有没有从bash脚本检查ERRORLEVE1?或者看到运行bash脚本的终端上的badapp的输出?
是的,$?是包含错误级别的变量。
尝试echo $?例如。
Cygwin bash的一个例子(我猜你正在使用Cygwin,因为你在你的例子中使用Windows cmd)
susam@nifty /cygdrive/c/Documents and Settings/susam/Desktop $ cmd /c "badapp" 'badapp' is not recognized as an internal or external command,operable program or batch file. susam@nifty/cygdrive/c/Documents and Settings/susam/Desktop $ if [ $? -eq 0 ] > then > echo "good" > else > echo "bad" > fi bad