Zeichenfolgenvergleichsoperator in Bash

  1. Bash-Skript
  2. String-Variable in Bash
  3. Zeichenfolgenvergleichsoperator in Bash-Skript
Zeichenfolgenvergleichsoperator in Bash

In diesem Artikel erklären wir den String-Vergleich in Bash mit der if-Anweisung.

Ein unter Linux ausgeführtes Shell-Programm, das die Befehlszeilenschnittstelle für Benutzer zum Ausführen verschiedener Befehle bereitstellt, wird als Bash-Shell bezeichnet. Es wird auch als Standard-Shell in vielen Linux-Distributionen verwendet, bekannt als GNU Bourne-Again Shell (Bash).

Bash-Skript

Eine Reihe von Bash-Befehlen, die in eine Datei geschrieben werden, wird als Bash-Skript bezeichnet. Die Bash-Shell führt diese Befehle nach dem Lesen aus der Datei aus.

Die Dateiendung eines Bash-Skripts ist .sh. Der folgende Inhalt einer Datei mit dem Namen First.sh wird unten angezeigt.

#!/bin/Bash
echo "Hello World"

Die obige Datei First.sh ist ein Bash-Skript, das nur einen echo-Befehl enthält, der Hello world auf dem Terminal anzeigt.

Die erste Zeile der Datei #!/bin/Bash informiert über das Bash-Programm im System, das als Interpreter fungiert, um den in der Skriptdatei geschriebenen Befehl auszuführen.

Die Bash-Shell bietet verschiedene Methoden, um das Skript auf dem Terminal auszuführen. Einige Methoden werden unten diskutiert.

  1. Ein bash-Befehl gefolgt von der Bash-Skriptdatei wird verwendet, um das Skript auszuführen. Der folgende Befehl führt das Skript First.sh aus.

    bash First.sh
    

    Die Ausgabe dieses Befehls ist:

    Hello World
    
  1. Führen Sie das Bash-Skript aus, indem Sie den Pfad angeben. Nachdem wir der Skriptdatei mit chmod +x First.sh das Ausführungsrecht zugewiesen haben, können wir die Skriptdatei ausführen, indem wir den Pfad des Skripts angeben.

    <path to the script file>/First.sh
    

    Wir können den absoluten Pfad mit der obigen Methode oder den relativen Pfad zum Skript mit ./First.sh verwenden, um das Skript auszuführen.

String-Variable in Bash

Wir können jeden String in einer Variablen deklarieren und initialisieren, indem wir den Zuweisungsoperator (=) im Bash-Skript verwenden.

Zum Beispiel:

#!/bin/Bash
S="Hello World"
echo $S

Im obigen Beispiel deklarieren wir eine String-Variable S und initialisieren sie mit Hello World als Wert. Der Befehl echo zeigt den Wert der String-Variablen auf dem Terminal mit dem Befehl echo und dem Operator $ an.

Zeichenfolgenvergleichsoperator in Bash-Skript

Wir können zwei Strings mit dem Operator = (ist gleich) im Bash-Skript vergleichen. Wir verwenden auch den Operator ==, um die Zeichenfolge zu vergleichen.

Das == ist ein Synonym des =-Operators für String-Vergleiche.

Stellen Sie sich beispielsweise ein Bash-Skript First.sh vor, das den folgenden Inhalt enthält.

#!/bin/Bash
S1="Hello World"
S2="Hello World"
if [ "$S1" = "$S2" ]
then
	echo "Equal"
else
	echo "Not Equal"
fi

Das folgende Skript enthält zwei Strings, S1 und S2 haben denselben Wert. Die if-Bedingung vergleicht die Zeichenfolge mit dem =-Operator; Wir können jedoch auch die Anweisung if [ "$S1" == "$S2" ] verwenden, um diese Zeichenfolgen zu vergleichen.

Das Folgende ist die Ausgabe des First.sh-Skripts.

Equal

Hinweis: Wenn wir Leerzeichen vor und nach dem =-Operator in der if-Anweisung entfernen, zum Beispiel if [ "$S1"="$S2" ], werden die Strings nicht genau verglichen.

Der Operator != (ist nicht gleich) wird für den Ungleichheitsvergleich zweier Strings verwendet. Wir können diesen Operator in einer if-Anweisung mit if [ "$S1" != "$S2" ] verwenden.

Diese Anweisung gibt true zurück, wenn die Strings S1 und S2 ungleich sind.

Genießen Sie unsere Tutorials? Abonnieren Sie DelftStack auf YouTube, um uns bei der Erstellung weiterer hochwertiger Videoanleitungen zu unterstützen. Abonnieren

Verwandter Artikel - Bash String