Logischer ODER-Operator in Bash-Skript
-
Logischer
ODER
-Operator (||
) in Bash -
Logischer
ODER
-Operator (||
) mit nicht-booleschen Werten -
Verwendung des logischen
OR
-Operators (||
) im Bash-Scripting
Wir erklären den logischen ODER
-Operator (||
) und wie er in diesem Artikel funktioniert. Wir werden auch Beispiele dafür geben, wie es in Bash-Skripten verwendet werden kann.
Logischer ODER
-Operator (||
) in Bash
Der logische ODER
-Operator ||
verarbeitet mehrere Werte. Es wird normalerweise mit booleschen Werten verwendet und gibt einen booleschen Wert zurück. Es gibt true
zurück, wenn mindestens einer der Operanden wahr ist. Gibt false
zurück, wenn alle Werte falsch sind.
Lassen Sie uns ein paar Beispiele geben.
True || False --> True
False || True --> True
True || True --> True
False || False --> False
Logischer ODER
-Operator (||
) mit nicht-booleschen Werten
Der Rückgabewert ist kein boolescher Wert, wenn der logische ODER
-Operator (||
) mit nicht booleschen Werten wie Zeichenketten und Zahlen verwendet wird. Betrachten Sie das folgende Beispiel.
param1 || param2 || param3
Wenn der boolesche Wert von param1
true
ist, wird der Wert dieses Operanden zurückgegeben und die anderen Operanden werden ignoriert. Andernfalls wird param2
geprüft.
Wenn sein boolescher Wert true
ist, ist das Ergebnis der Wert von param2
, und die restlichen Operanden werden ignoriert. Dieser Vorgang wird bis zum letzten Operanden fortgesetzt.
Ist der boolesche Wert des letzten Operanden ebenfalls nicht true
, ist das Ergebnis der Wert des letzten Operanden.
Der boolesche Wert der folgenden Ausdrücke ist false
. Der Rest ist true
.
0
NaN
null
undefined
""
,''
(Leerer String)
Lassen Sie uns Beispiele für nicht boolesche Werte geben.
1 || 0 --> 1
"" || 1 --> 1
"" || 0 --> 0
1 || "x" --> 1
"x" || 1 --> "x"
Verwendung des logischen OR
-Operators (||
) im Bash-Scripting
Der logische ODER
-Operator (||
) ist derselbe in Bash-Skripten. Nun untersuchen wir das Beispiel mit der Bash-Scripting-Syntax.
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
Im obigen if
-Block werden die Operanden an den logischen OR
-Operator (||
) übergeben. Das Ergebnis ist im ersten Vergleich false
, weil 1
und 2
ungleich sind.
Da die beiden Werte beim zweiten Vergleich gleich sind, sind sie gleich und ergeben true
. Unser Prozess wird also false || true
. Diese Operation gibt true
zurück und der erste echo
-Befehl wird wie oben erklärt ausgeführt.
Wir können für diese Operation auch das Flag -o
verwenden.
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
Die Logik dieses Codes ist dieselbe wie die des ersten. Aber dieses Mal wird das Ergebnis der Operation false
sein, da beide Vergleiche falsch sind. Der echo
-Befehl innerhalb des else
-Blocks wird also ausgeführt.
Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.
LinkedIn