Bash 指令碼中的邏輯或運算子
我們將在本文中解釋邏輯 OR
運算子(||
)及其工作原理。我們還將舉例說明如何在 Bash 指令碼中使用它。
Bash 中的邏輯 OR
運算子 (||
)
邏輯 OR
運算子||
處理多個值。它通常與布林值一起使用並返回一個布林值。如果至少有一個運算元為真,則返回真
。如果所有值都為假,則返回 假
。
讓我們舉幾個例子。
True || False --> True
False || True --> True
True || True --> True
False || False --> False
具有非布林值的邏輯 OR
運算子 (||
)
如果邏輯 OR
運算子 (||
) 與字串和數字等非布林值一起使用,則返回值將不是布林值。參考下面的例子。
param1 || param2 || param3
如果 param1
的布林值為 true
,則返回該運算元的值,忽略其他運算元。否則,檢查 param2
。
如果其布林值為 true
,則結果為 param2
的值,其餘運算元將被忽略。這個過程一直持續到最後一個運算元。
如果最後一個運算元的布林值也不是 true
,則結果是最後一個運算元的值。
以下表示式的布林值為 false
。其餘的都是真實
。
0
NaN
null
undefined
""
,''
(空字串)
讓我們舉例說明非布林值。
1 || 0 --> 1
"" || 1 --> 1
"" || 0 --> 0
1 || "x" --> 1
"x" || 1 --> "x"
在 Bash 指令碼中使用邏輯 OR
運算子 (||
)
邏輯 OR
運算子 (||
) 在 Bash 指令碼中是相同的。現在,我們將使用 Bash 指令碼語法檢查該示例。
if [ 1 -eq 2 ] || [ 1 -eq 1 ]; then
echo "The result of the operation is true"
else
echo "The result of the operation is false"
fi
在上面的 if
塊中,運算元被賦予邏輯 OR
運算子 (||
)。第一次比較的結果是 false
,因為 1
和 2
不相等。
由於在第二次比較中這兩個值相同,因此它們相等,從而得出 true
。所以,我們的過程變成了 false ||真的
。該操作返回 true
,並且第一個 echo
命令按照我們上面解釋的方式執行。
我們也可以使用 -o
標誌進行此操作。
if [ 1 -eq 2 -o 3 -eq 4 ]; then
echo "The result of the operation is true"
else
echo "The result of the operation is false"
fi
這段程式碼的邏輯與第一個相同。但是這一次,操作的結果將是假
,因為兩個比較都是假的。因此,else
塊內的 echo
命令執行。
Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.
LinkedIn