GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So verwenden Sie bash if -z und if -n zum Testen von Zeichenfolgen in Linux

In der Bash-Skriptsprache sind verschiedene Zeichenfolgenoperatoren verfügbar, die zum Testen von Zeichenfolgen verwendet werden können. Die Operatoren -z und -n werden verwendet, um zu überprüfen, ob die Zeichenfolge Null ist oder nicht. In dieser Anleitung werden wir diese Zeichenfolgenoperatoren mit der if-Anweisung in Centos 8 testen.

In diesem Handbuch lernen Sie die folgenden Teststrings kennen:

  • If-n wenn String Null ist.
  • If-n wenn String nicht Null ist
  • If-z wenn Sting Null ist
  • If-z wenn String nicht Null ist
  • If-z während String-Benutzereingaben entgegengenommen werden

Verwendung des if -n-Operators, wenn String Null ist

Unser Hauptziel, den if-n-Operator hier zu verwenden, besteht darin, zu zeigen, dass die bestimmte Zeichenfolge Null ist. Befolgen Sie die angegebenen Schritte, um diese Aufgabe auszuführen:

Erstellen Sie eine neue Datei mit dem Namen CheckString.sh. Sie können es direkt in Ihrem Home-Verzeichnis oder mit dem folgenden Befehl im Terminal erstellen:

$ touch CheckString.sh

Sie können sehen, dass die Datei CheckString.sh in Ihrem Home-Verzeichnis erstellt wurde, wie in der Abbildung gezeigt.

Öffnen Sie die Datei CheckString.sh und schreiben Sie ein Bash-Skript, wie es im folgenden Bild gezeigt wird. Hier sehen Sie, dass wir einen String mit dem Namen StdName gefolgt vom Wert Null initialisiert haben. In unserer if-Anweisung haben wir den Zeichenfolgentestoperator -n gefolgt von der Zeichenfolge StdName verwendet. Als Zeichenfolge ist StdName null, sodass der Operator -n den Else-Abschnitt des Skripts ausführt.

Jetzt führen wir den unten genannten Befehl aus, um zu prüfen, ob die Zeichenfolge Null ist oder nicht.

$ bash CheckStrings.sh

Da unser String StdName Null ist, hat der String-Operator -n den Else-Teil ausgeführt. Die Ausgabe lautet also Sorry! Sie haben keinen Namen im Terminal, wie im unteren Bild dargestellt.

Verwendung von if -n wenn String nicht Null ist

Wir verwenden hier den if-n-Operator, um zu zeigen, dass die angegebene Zeichenfolge in der Datei nicht Null ist. Sie müssen die unten aufgeführten Schritte ausführen, um diese Aktivität auszuführen:

Sie müssen keine neue Datei oder Zeichenfolge erstellen. Sie verwenden für diese Aufgabe dieselbe Datei CheckString.sh mit einer geringfügigen Änderung. Diesmal muss die Zeichenfolge StdName in Ihrer Datei einen anderen Wert als null haben. Sie müssen Ihrem String also einen Wert (nicht null) zuweisen, während alle anderen Skripte gleich bleiben. Wie Sie sehen können, haben wir der Zeichenfolge StdName einen Wert Aqsa Yasin zugewiesen. Diesmal wird also ein Teil des Skripts vom -n-Operator ausgeführt.

Jetzt führen wir den unten genannten Befehl aus, um zu prüfen, ob die Zeichenfolge einen Wert hat oder nicht.

$ bash CheckStrings.sh

Da unser String StdName jetzt einen Wert Aqsa Yasin hat, hat der String-Operator -n den if-Teil ausgeführt. Die Ausgabe wird also Hy! Aqsa Yasin im Terminal, wie im angehängten Bild angezeigt.

Verwendung von if -z wenn String Null ist

Wir verwenden hier den if-z-Operator, um zu zeigen, dass die angegebene Zeichenfolge in der Datei Null ist. Sie müssen die unten aufgeführten Schritte ausführen, um diese Aktivität auszuführen:

Für diese Aufgabe gibt es nichts Neues zu tun. Verwenden Sie einfach dieselbe alte Datei CheckString.sh mit dem Zeichenfolgenoperator -z. Wie wir wissen, führt der Operator -z den True-Teil aus, wenn die Zeichenfolge  Null ist. Da die Zeichenfolge StdName einen Nullwert hat, wird der if-Teil des Skripts vom Operator -z ausgeführt.

Jetzt führen wir den unten genannten Befehl aus, um zu überprüfen, ob die Zeichenfolge null ist.

$ bash CheckStrings.sh

Da unser String StdName jetzt keinen Wert hat und der String-Operator -z weiß, dass der String null ist, führt er den if-Teil aus. Die Ausgabe lautet also Entschuldigung, Sie haben keinen Namen im Terminal, wie im angehängten Bild dargestellt.

Verwendung von if -z wenn String nicht Null ist

Wir verwenden hier den if-z-Operator, um zu zeigen, dass die angegebene Zeichenfolge in der Datei nicht Null ist. Wenn Sie diese Schritte durchlaufen, können Sie diese Aktivität ausführen:

Es muss nichts Neues gemacht werden. Wir werden dieselbe alte Datei CheckString.sh für diese Aufgabe mit einer geringfügigen Änderung verwenden. Dieses Mal ersetzen wir den String-Operator -n durch den String-Operator -z. Außerdem müssen Sie if- und else-Teile des Skripts untereinander austauschen. Wie wir wissen, führt der Operator -z den True-Teil aus, wenn die Zeichenfolge  Null ist. Da die Zeichenfolge StdName den Wert Aqsa Yasin hat, der nicht null ist, wird die Else-Anweisung vom Operator -z ausgeführt.

Jetzt führen wir den unten genannten Befehl aus, um zu prüfen, ob die Zeichenfolge null ist oder nicht.

$ bash CheckStrings.sh

Da unser String StdName jetzt einen Wert Aqsa Yasin hat und der String-Operator -z weiß, dass der String nicht null ist, führt er den Else-Teil aus. Die Ausgabe lautet also Hy Aqsa Yasin im Terminal, wie im folgenden Bild gezeigt.

Verwendung von if -z beim Aufnehmen von String-Benutzereingaben

Zuletzt verwenden wir den if-z-Operator, um die durch Verwendung zur Laufzeit hinzugefügte Zeichenfolgeneingabe zu testen. Sie müssen die folgenden Schritte ausführen, um die Eingabe des Benutzerstrings zu testen:

Dieses Mal müssen Sie Ihr Skript in der Datei etwas ändern. Zunächst verwenden wir den Operator -z in der if-Anweisung, gefolgt von der Variablenzeichenfolge. Das System fordert den Benutzer auf, einige Zeichenfolgenwerte hinzuzufügen. Der Benutzer fügt eine Zeichenfolge hinzu. Bei Verwendung der Leseanweisung speichert das System die vom Benutzer geschriebene Zeichenfolge in der Variablen Zeichenfolge. Wie wir wissen, führt der Operator -z den if-Teil der Anweisung aus, wenn die Zeichenfolge gültig ist. Wenn die vom Benutzer eingegebene Zeichenfolge null ist, fordert das System Sie auf, die Zeichenfolge erneut einzugeben. Wenn die vom Benutzer eingegebene Zeichenfolge nicht null ist, zeigt das System die Zeichenfolge an.

Jetzt führen wir den unten genannten Befehl aus, um die vom Benutzer eingegebene Zeichenfolge zu überprüfen:

$ bash CheckStrings.sh

Wenn das System den Benutzer auffordert, eine Zeichenfolge hinzuzufügen, fügt der Benutzer keinen Wert hinzu. Der -z-Operator erkennt also die Zeichenfolge als null, sodass die if-Anweisung ausgeführt wird. Das System forderte erneut auf, dem Benutzer einen Zeichenfolgenwert hinzuzufügen. Jetzt hat der Benutzer dieses Mal einen gültigen Zeichenfolgenwert New World Order hinzugefügt. Daher zeigte das System die Meldung The string you enter is:New World

an

Schlussfolgerung

In diesem Handbuch haben Sie erfahren, wie Sie Zeichenfolgenoperatoren verwenden, um einen Zeichenfolgenwert zu testen, der entweder null oder nicht null ist. Ich hoffe, dieser Artikel hat Ihnen sehr dabei geholfen, genügend Befehle für die Zeichenfolgenoperatoren -z und -n zu erhalten und Anweisungen zu manipulieren.


Linux
  1. Wie ich Ansible und Anacron für die Automatisierung verwende

  2. Was ist ein Chown-Befehl unter Linux und wie wird er verwendet?

  3. So installieren und verwenden Sie Etcher unter Linux, um Live Linux USB zu erstellen

  4. So installieren und verwenden Sie Flatpak unter Linux

  5. So installieren und verwenden Sie Traceroute unter Linux

Linux-Hostdatei:Wie wird sie bearbeitet und verwendet?

So installieren und verwenden Sie PuTTY unter Linux

So installieren und verwenden Sie phpMyAdmin unter Linux

So installieren und verwenden Sie Okteta für RAW-Datendateien unter Linux

So installieren und verwenden Sie den fd-Befehl unter Linux

So installieren und verwenden Sie Nu Shell unter Linux