2011-11-30 54 views
1

我想編寫一個腳本來提取配置使使安裝源(xyz.tar.bz2)。但是如果這些命令之一有錯誤,我想停止這個腳本。是否有任何信號或方法專門用於使命令檢測執行過程中的錯誤以停止腳本?錯誤檢測命令,比如「讓」

回答

0

這是真的;更簡單的方法是...

tar xvf foo.tar.bz2 && make && make install 
2

如果運行的任何命令返回一個非零的退出代碼(包括被一個信號殺死),通常會中止。所以你只需要確保你的腳本存在(有錯誤),如果一個命令失敗。此外,使自己然後存在一個非零狀態(所以你可以檢測makemake install失敗)。請注意,可以通知make忽略每個命令的基礎上的錯誤(通過在命令前加上-),但這不是默認設置。

您可以通過兩種主要的方式做到這一點:

  1. set -e(雖然提防set -e has a lot of problems
  2. 測試每個命令失敗(例如,tar xzf foo.tar.gz || exit 1

或者,你可以使用按照其意圖的方式,並編寫制定規則來完成所有這些步驟。