Was bedeutet „ ||“ Bedeuten? (Doppelrohr) – Bash

Die Doppelpipe („||“) ist ein Steueroperator, der die logische ODER-Verknüpfung darstellt. Es wird nur dann zum Ausführen eines Befehls oder einer Reihe von Befehlen verwendet, wenn der vorherige Befehl oder die vorherige Pipeline fehlgeschlagen ist oder einen Statuscode ungleich Null zurückgegeben hat. In diesem Leitfaden wird erläutert, was diese Doppelpipe bedeutet und wie sie beim Bash-Scripting verwendet wird. Lesen Sie diesen Leitfaden also, wenn Sie interessiert sind.

Was bedeutet „||“ Bedeuten? (Doppelrohr)

Der Double-Pipe-Operator ergibt „true“, wenn einer der Ausdrücke auf beiden Seiten wahr ist, andernfalls „false“. Das heißt, wenn einer der Ausdrücke wahr ist, muss der andere Ausdruck nicht ausgewertet werden. Wenn beide Ausdrücke falsch sind, wird der Operator als falsch ausgewertet. Hier ist die Syntax dafür:

ODER-Operation Wahrheitstabelle 0 0 0 0 1 1 1 0 1 1 1 1

Die Syntax für die Verwendung von Double Pipe.

||

Zur weiteren Veranschaulichung habe ich ein Bash-Skript erstellt, das ohne Doppelpipe läuft und den Exit-Status überprüft, um zu sehen, ob der Befehl ausgeführt wird oder nicht. Unten ist der Code dafür:

#!/bin/bash

# Versuch, eine Datei zu entfernen
rm /home/aaliyan/bashfile44.sh

Wenn [ $? -ne 0 ]; Dann
# Der vorherige Befehl ist fehlgeschlagen. Geben Sie daher eine Fehlermeldung aus
echo „Datei konnte nicht entfernt werden“
anders
# Der vorherige Befehl war erfolgreich. Geben Sie daher eine Erfolgsmeldung aus
echo „Datei entfernt“
fi

In diesem Beispiel wird der Befehl rm zum Entfernen einer Datei verwendet. Wenn die Datei nicht entfernt werden kann oder nicht vorhanden ist, führt Bash den Echo-Befehl aus, um eine Fehlermeldung auszugeben. Um den Exit-Status des Entfernungsbefehls zu überprüfen, wird die if-Anweisung verwendet, die in der speziellen Shell-Variablen $? gespeichert ist. Wenn der Exit-Status keine Nullnummer ist und der Befehl fehlschlägt, wird die Fehlermeldung wie folgt gedruckt:

Wenn die Datei beendet und entfernt wird, sieht die Ausgabe ähnlich wie folgt aus:

Hier ist das gleiche Bash-Skript, das die Datei entfernt, aber in diesem Skript habe ich den Double-Pipe-Operator verwendet und man sieht, dass der Code leichter verständlich und lesbar geworden ist:

#!/bin/bash

# Versuchen Sie, eine Datei zu entfernen, und geben Sie eine Fehlermeldung aus, wenn dies fehlschlägt
rm /Pfad/zur/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 auszugeben. Hier ist die Ausgabe dieses Skripts, falls er fehlschlägt:

Nun wird im ersten Skript eine if-Anweisung verwendet, um den Exit-Status des rm-Befehls zu überprüfen, und dann wird die Fehlermeldung ausgegeben, wenn der Befehl fehlschlägt. Dieser Ansatz ist ausführlicher und erfordert mehr Codezeilen. Darüber hinaus kann es vorkommen, dass Sie vergessen, den Exit-Status eines Befehls zu überprüfen, was zu Fehlern oder unerwartetem Verhalten 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, wenn der rm-Befehl fehlschlägt, da in diesem Fall die erste Eingabe falsch ist. Dieser Ansatz ist prägnanter und einfacher zu lesen und stellt sicher, dass die Fehlermeldung immer ausgegeben wird, wenn der Befehl fehlschlägt.

Im Allgemeinen empfiehlt es sich, das Zeichen „||“ zu verwenden. Operator in Ihren Bash-Skripten, um Ihren Code zu vereinfachen und lesbarer zu machen. Es ist jedoch wichtig zu beachten, dass dieser Operator nur für einfache Fälle der Fehlerbehandlung funktioniert und Sie in komplexeren Szenarien möglicherweise fortgeschrittenere Techniken verwenden müssen.

Wenn die Datei entfernt wird, führt der Double-Pipe-Operator in ähnlicher Weise die andere Bedingung nicht aus und wird einfach beendet. Wenn also eine Datei beendet wird, gilt Folgendes:

Abschluss

Das „||“ Der (Double-Pipe-)Operator in Bash ist ein nützlicher Steuerungsoperator, der Shell-Skripte vereinfachen kann, indem er die bedingte Ausführung von Befehlen basierend auf dem Erfolg oder Misserfolg vorheriger Befehle ermöglicht. Dieses Handbuch enthält anhand von Beispielen ausführliche Informationen zur Bedeutung dieses Operators und zur Verwendung in Bash-Skripten.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen