2009-07-22 108 views
4

下面的bash代碼段究竟做了什麼? $ {2: - $ {1}}

回答

10

「使用第二個參數,但如果沒有,那麼第一個參數」。

5

${var:-default}評估爲的$var值,除非$var沒有設置的$ {2}的值在這種情況下的計算結果爲文本"default"$1,$2等是你程序(或函數)的命令行參數。將兩者放在一起意味着如果傳遞了兩個參數則返回$2,否則返回$1

1

它的意思是「使用第二個參數,如果第一個是未定義的爲空,否則使用第一個」。形式「$ {2 - $ {1}}」(no':')的意思是「如果第一個沒有定義,則使用第二個(但如果第一個被定義爲空的,則使用它)」。