Was macht "||" Bedeuten? (Doppelpfeife)
Der Doppelrohroperator bewertet true, wenn einer der Ausdrücke auf beiden Seiten wahr ist, und ansonsten falsch. Dies bedeutet, dass, wenn einer der Ausdrücke wahr ist, der andere Ausdruck nicht bewertet werden muss. Wenn beide Ausdrücke falsch sind, bewertet der Bediener auf False. Hier ist die Syntax dafür:
Oder Operation Truth Table | ||
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Die Syntax für die Verwendung von Doppelrohr.
||
Um weiter zu veranschaulichen, habe ich ein Bash -Skript erstellt, das ohne Doppelrohr ausgeführt wird, und überprüfen Sie den Exit -Status, um festzustellen, ob der Befehl ausgeführt wird oder nicht. Im Folgenden finden Sie den Code dafür:
#!/Bin/Bash
# Versuchen Sie, eine Datei zu entfernen
rm/home/aaliyan/bashfile44.Sch
Wenn [$? -ne 0]; Dann
# Der vorherige Befehl ist fehlgeschlagen. Drucken Sie also eine Fehlermeldung aus
Echo "Datei konnte nicht entfernt werden"
anders
# Der vorherige Befehl war erfolgreich. Drucken Sie also eine Erfolgsnachricht aus
echo "Datei entfernt"
fi
In diesem Beispiel wird der Befehl rm verwendet, um eine Datei zu entfernen. Wenn die Datei nicht entfernt werden kann oder nicht vorhanden ist, führt Bash den Echo -Befehl aus, um eine Fehlermeldung zu drucken. So überprüfen Sie den Befehl zum Ausgangsstatus des Entfernens Die Anweisung wird verwendet, der in der Special Shell Variable $ gespeichert ist?. Wenn der Exit -Status NOB Zero -Nummer ist, falls der Befehl fehlschlägt, wird die Fehlermeldung so gedruckt:
In ähnlicher Weise ist die Ausgabe wie folgt:
Hier ist das gleiche Bash -Skript, das die Datei entfernt, aber in diesem Skript habe ich den Doppelrohroperator verwendet und man kann sehen, dass der Code einfacher zu verstehen und lesbar ist:
#!/Bin/Bash
# Versuchen Sie, eine Datei zu entfernen und eine Fehlermeldung zu drucken, wenn sie fehlschlägt
RM/Pfad/to/Datei || Echo "Datei konnte nicht entfernt werden"
In diesem Code wird der Befehl rm ausgeführt, und wenn er fehlschlägt, wird der Befehl echo ausgeführt, um die Fehlermeldung zu drucken, und hier ist es die Ausgabe dieses Skripts, wenn er fehlschlägt:
Im ersten Skript wird nun eine IF -Anweisung verwendet, um den Exit -Status des Befehls RM zu überprüfen, und dann wird die Fehlermeldung gedruckt, wenn der Befehl fehlschlägt. Dieser Ansatz ist ausführlicher und erfordert mehr Codezeilen. Darüber hinaus ist es möglich, den Exit -Status eines Befehls zu überprüfen, der zu Fehler oder unerwarteten Verhaltensweisen in Ihrem Skript führen kann.
Während ich im zweiten Skript das "||" verwendet habe Operator, um die Fehlerbehandlung zu vereinfachen. Der Echo -Befehl wird nur ausgeführt, falls der Befehl RM fehlschlägt, da in diesem Fall die erste Eingabe falsch ist. Dieser Ansatz ist prägnanter und leichter zu lesen und stellt sicher, dass die Fehlermeldung immer gedruckt wird, wenn der Befehl fehlschlägt.
Im Allgemeinen ist es eine gute Praxis, das „||“ zu verwenden, Bediener in Ihren Bash -Skripten, um Ihren Code zu vereinfachen und ihn lesbarer zu machen. Es ist jedoch wichtig zu beachten.
Wenn die Datei entfernt wird, würde der Doppelrohroperator die andere Bedingung nicht ausführen und beendet dies nur hier, wenn es dann eine Datei gibt, dann:
Abschluss
Das "||" (Double Pipe) -Operator in Bash ist ein nützlicher Kontrolloperator, der die Shell -Skripte vereinfachen kann, indem die bedingte Ausführung von Befehlen basierend auf dem Erfolg oder Misserfolg früherer Befehle ermöglicht wird. Dieser Leitfaden enthält umfangreiche Details, was dieser Bediener bedeutet und wie er mit Hilfe von Beispielen im Bash -Skript verwendet werden kann.