我想對腳本中調用的每個函數進行驗證,並在一個函數失敗時將整個腳本錯誤地排除。Bash腳本函數驗證
尋找最好的方法來做到這一點。我覺得我知道一次很好的做法,但不能再搞清楚。
我可以暴力,但它是討厭的。這是我如何能得到它的正常工作
copy_files $1
if [ "$?" -ne "0" ]; then
error "Copying files"
return -1
fi
這變得很醜陋,因爲我有一個腳本,雲:
命令1 命令2 命令3
有包裹與回報所有這些命令不是很理想。 :(請幫助!
+ 1代表'||',但我建議將'return -1'改爲'exit 1'(1是錯誤代碼的標準選擇)。這可以讓你定義一個名爲'die'的函數來處理退出的部分,然後你可以寫'command1 || die'和'command2 ||死亡「等。這是一個相當普遍的做法。 – 2010-07-10 23:18:27
我喜歡這個......但是我正在運行我的腳本。 ./myscript.sh。如果我在死亡的時候出口1,它會殺死我的整個航站樓。有關如何退出腳本而不會從腳本中終止我的終端的任何想法? – 2010-07-10 23:56:05