結合前面的例子,來寫一個條件表達式。如果第一個參數沒有,則輸出no parameter,否則輸出第一個參數。
if [ ... ]
then
...
else
...
fi
...表示可以編寫語句的地方。
必須要用fi結束整個條件語句。
注意[ ... ] 方括號要用空格和其他字符分開。
-n 是一個操作符,判斷後面的參數是否長度為0,如果不為0,返回true,為0則返回false.
其中復雜的條件表達式如下:
operator
produces true if...
number of operands
-n
operand non zero length
1
-z
operand has zero length
1
-d
there exists a directory whose name is operand
1
-f
there exists a file whose name is operand
1
-eq
the operands are integers and they are equal
2
-neq
the opposite of -eq
2
=
the operands are equal (as strings)
2
!=
opposite of =
2
-lt
operand1 is strictly less than operand2 (both operands should be integers)
2
-gt
operand1 is strictly greater than operand2 (both operands should be integers)
2
-ge
operand1 is greater than or equal to operand2 (both operands should be integers)
2
-le
operand1 is less than or equal to operand2 (both operands should be integers)
2