2015-10-15 138 views
0

我有說,像案例輸出(BASH)需要幫助

case "$1" in 
    -b*) myfunction exit 0;; 
    -B*) echo "Invalid!" >&2 exit 1;; 
esac 

基本上是使用「b」當用戶輸入參數有什麼簡單的情況下,它會做一些東西從MyFunction的。否則,如果用戶使用「B」輸入,它將打印錯誤並退出程序。

然而,真正發生的事情是,當用戶輸入 「」,它打印

Invalid! exit 1     

,而不是

Invalid! 

而且,它給人的「出口值「而不是」「。有誰知道我做錯了哪一部分?

回答

2

替換腳本

echo "Invalid!" >&2 exit 1 

通過

echo "Invalid!" >&2; exit 1 
+0

我有一個關於退出的問題。因此,當它讀取「退出1」時,它是否超出了情況循環或完全轉到腳本行的最底部? – John

+0

'退出1'立即退出腳本並返回代碼1。 – Cyrus