我有一個腳本檔案來自動編譯 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