在shell腳本中,if語句用于根據條件判斷來執行不同的代碼塊。if語句的基本語法如下:
if [ condition ]
then
# code block to be executed if condition is true
else
# code block to be executed if condition is false
fi
其中,condition
是一個條件表達式,可以使用各種比較運算符、邏輯運算符和文件測試操作符來構建條件。then
關鍵字表示如果條件為真,則執行接下來的代碼塊。else
關鍵字表示如果條件為假,則執行接下來的代碼塊。fi
關鍵字表示if語句的結束。
以下是一些常見的條件表達式示例:
檢查兩個值是否相等:if [ $var1 -eq $var2 ]
檢查一個值是否大于另一個值:if [ $var1 -gt $var2 ]
檢查一個文件是否存在:if [ -f $file ]
檢查一個目錄是否存在:if [ -d $dir ]
以下是一個完整的示例:
#!/bin/bash
num1=10
num2=20
if [ $num1 -gt $num2 ]
then
echo "$num1 is greater than $num2"
else
echo "$num1 is less than or equal to $num2"
fi
上述示例中,$num1
的值大于$num2
,因此if語句的條件為假,執行else代碼塊,輸出10 is less than or equal to 20
。