我有一个脚本文件可以自动编译 C++ 程序,然后自动运行该可执行文件。
脚本
g++ -o bin/program main.cpp
bin/program
问题是,有时编译器会遇到错误,无法生成可执行文件。因此,脚本将运行过时的版本。
我如何检测 g++ 是否无法生成可执行文件,以便我可以阻止脚本运行该文件?
答案1
g++
您可以像这样检查执行的退出代码:
g++ -o bin/program main.cpp
if [ "$?" -eq 0 ]
then bin/program
fi
答案2
首先检查文件是否存在:
test -x foo && ./foo