在Shell腳本中,if語句可以使用邏輯運算符進行條件判斷。常見的邏輯運算符包括&&
(邏輯與)、||
(邏輯或)和!
(邏輯非)。以下是這些運算符的使用方法:
&&
):當兩個條件都為真時,結果為真。否則為假。if [ condition1 ] && [ condition2 ]; then
# 當condition1和condition2都為真時,執行這里的代碼
fi
||
):當兩個條件中至少有一個為真時,結果為真。否則為假。if [ condition1 ] || [ condition2 ]; then
# 當condition1和condition2中至少有一個為真時,執行這里的代碼
fi
!
):對一個條件取反,即如果條件為真,則結果為假;如果條件為假,則結果為真。if ! [ condition ]; then
# 當condition為假時,執行這里的代碼
fi
示例:
#!/bin/bash
num1=10
num2=20
if [ $num1 -lt $num2 ] && [ $num2 -gt 15 ]; then
echo "num2大于num1且大于15"
elif [ $num1 -gt $num2 ] || [ $num2 -lt 10 ]; then
echo "num1大于num2或num2小于10"
else
echo "沒有滿足的條件"
fi
在這個示例中,我們比較了兩個數字num1
和num2
的大小關系,并根據不同的條件執行相應的代碼塊。