0
我想對我正在編寫的bash腳本進行一些錯誤檢查。特別是,我希望確保以下選項不被視爲選項(有意)保留爲空的參數。避免將選項自動作爲參數
比方說,下面的代碼片段
while getopts 「hhelpc1:2:」 OPTION
do
case "$OPTION" in
h|help)
usage
exit 1
;;
1)
var1=${OPTARG}
;;
2)
var2=${OPTARG}
;;
c)
test1
;;
esac
done
假設我的劇本被稱爲test.sh
通過做這樣的事情
./test.sh -1 -2 dddd -c
在上述情況下test1的輸出的錯誤消息 - 2選項爲空。相反,我想提出-1爲空的警告,而目前-2將作爲-1的參數。
任何幫助?
感謝 安德烈
嘿格倫。你很棒。感謝這一塊代碼。我會審查它。我立即發現的情況就是這種情況 - 對於選項1,[hc1]不應該是 - [hc2]。如果沒有,那麼我不明白。 –
你說得對。固定。 –
嗨格倫,還有一個問題。有沒有辦法在執行功能位之前解析所有參數?考慮到上面的例子,假設我有一個./script.sh -c -1 aa -2 bb,以-c作爲第一個參數將在所有其餘行被讀取之前觸發測試函數。當然,如果參數丟失,測試可以防止執行,但只要讀取-1和-2,就不會再出現這種情況。這裏有什麼提示嗎? –