Schnellzugriffe
- Der expr-Befehl
- expr-Befehlsoptionen
- Ausführen von Rechenoperationen mit expr
- Vergleichen zweier Ausdrücke mit expr
- Ermitteln der Länge einer Zeichenfolge mit expr
- Abgleichen zweier Zeichenfolgen mit expr
- Inkrementieren und Dekrementieren einer Variable mit expr
- Extrahieren einer Teilzeichenfolge mit expr
- Ausführen von expr-Operationen mit einem Shell-Skript
- Probieren Sie einige alternative Linux-Befehle aus
Wichtige Erkenntnisse
- Der Befehl expr kann Ausdrücke auswerten und den entsprechenden Wert ausgeben. Sie können ihn verwenden, um arithmetische Berechnungen, Vergleiche und Zeichenfolgenoperationen durchzuführen.
- Mit dem Befehl expr können Sie nach bestimmten Mustern im Text suchen, Benutzereingaben validieren und sogar Text basierend auf definierten Mustern ersetzen.
- Der Befehl expr kann Zeichenfolgen auch mithilfe von Zeichenfolgenfunktionen bearbeiten, z. B. die Länge ermitteln, Zeichenfolgen vergleichen und Teilzeichenfolgen extrahieren.
Möchten Sie einige einfache Berechnungen in Linux durchführen? Verwenden Sie einfach den Befehl expr. Dieser Befehl kann verschiedene Operationen ausführen, z. B. Ausdrücke auswerten, Teilzeichenfolgen extrahieren, Zeichenfolgen vergleichen und mehr. Mit expr können Sie zwei Zahlen addieren, subtrahieren, multiplizieren oder dividieren und erhalten die Antwort als Ausgabe.
Der Befehl expr
expr ist ein Tool, das Berechnungen durchführen und Zeichenfolgen basierend auf den von Ihnen angegebenen Ausdrücken bearbeiten kann. Mit dem Befehl expr können Sie verschiedene Operationen an Ganzzahlen und Zeichenfolgen durchführen, z. B. Werte vergleichen oder bestimmte Muster mithilfe regulärer Ausdrücke finden.
Sie können mehrere Ausdrücke als Argumente an expr übergeben, getrennt durch Leerzeichen. Es wertet nicht nur einen Ausdruck aus, sondern zeigt auch die entsprechende Ausgabe im Terminal an. Der Befehl expr funktioniert sowohl im Bash-Terminal als auch in Shell-Skripten.
Der Befehl expr ist praktisch, wenn Sie Daten bearbeiten oder Berechnungen durchführen möchten, ohne das Terminal zu verlassen. Sie müssen jedoch auf die Syntax und Reihenfolge der Ausdrücke achten, da der Befehl sonst fehlschlägt und eine Fehlermeldung anzeigt.
Die Syntax des Befehls expr lautet:
expr expression
… wobei der Ausdruck eine Kombination aus Argumenten und Operatoren sein kann. Beispielsweise wertet der unten angegebene Ausdruck die Operation zwischen arg1 und arg2 aus und zeigt das Ergebnis an:
expr arg1 operator arg2
Die Argumente können je nach Operator Zahlen oder Zeichenfolgen sein. Die Operatoren können arithmetisch, relational, zeichenfolgenbezogen oder logisch sein. Es ist das Symbol, das die auszuführende Operation angibt. Für Ganzzahlen können Sie beispielsweise Operatoren wie +, -, *,/und % verwenden.
Für Zeichenfolgen können Sie reguläre Ausdrücke und Zeichensätze verwenden, um Übereinstimmungen und Indizes zu finden. Sie können auch Klammern verwenden, um Ausdrücke zu gruppieren, und Backslashes, um Sonderzeichen zu maskieren.
expr-Befehlsoptionen
Obwohl expr keine herkömmlichen Befehlszeilenoptionen hat, bietet es vielseitige Operatoren für Arithmetik, Zeichenfolgenmanipulation und Vergleiche. Darüber hinaus können Sie die Option –help verwenden, um die Hilfeseite von expr anzuzeigen, auf der die Syntax, Funktionen und Beispiele erläutert werden:
expr –help

Um die Version des Befehls expr zu überprüfen, führen Sie Folgendes aus:
expr –version

Diese Option zeigt die Versionsnummer, den Quellcode, die Lizenz und den Autor von expr an.
Ausführen von Rechenoperationen mit expr
Um den Befehl expr für grundlegende Rechenoperationen zu verwenden, schreiben Sie den Befehl expr gefolgt von einem Leerzeichen. Schreiben Sie dann den Ausdruck, den Sie auswerten möchten. Dieser Ausdruck ist eine Kombination aus Ganzzahlen und Operatoren wie +, -, * und /. Achten Sie darauf, jedes Token (Ganzzahl oder Operator) im Ausdruck durch ein Leerzeichen zu trennen.
Wenn Sie beispielsweise die Summe von 15 und 12 mit expr ermitteln möchten, können Sie Folgendes schreiben:
expr 15 + 12

Ebenso können Sie den Befehl expr verwenden, um andere Rechenoperationen wie Subtraktion, Multiplikation und Division durchzuführen. Lassen Sie uns einige Ausdrücke mit dem Befehl expr auswerten:
expr 15 – 12
expr 15 * 5
expr 10/2

Sie müssen den Multiplikationsoperator (*) mit einem Backslash () maskieren, um eine Shell-Erweiterung zu vermeiden. Andernfalls versucht die Shell, den Operator (*) mit den Dateinamen im aktuellen Verzeichnis abzugleichen und sie an den Befehl expr zu übergeben, was zu einem Fehler führt.

Sie können auch verhindern, dass die Shell die Zeichen interpretiert, indem Sie die Argumente und Operatoren richtig in Anführungszeichen setzen:
expr “5” “*” “3”

Vergleichen zweier Ausdrücke mit expr
Um zwei Ausdrücke mit dem Befehl expr zu vergleichen, können Sie logische Operatoren wie =, <, > und != verwenden. Wenn der Befehl eins ausgibt, ist die Bedingung erfüllt, andernfalls ist sie falsch und der zurückgegebene Wert ist null.
Um beispielsweise zu prüfen, ob das erste Argument gleich dem zweiten Argument ist, verwenden wir den Operator =:
expr 40 = 50

Prüfen wir nun, ob das erste Argument kleiner ist als das andere Argument. Dazu verwenden wir den Operator <:
expr 40 < 50

Sie können auch prüfen, ob die Werte ungleich sind. Verwenden Sie dazu einfach den Operator != zwischen den Werten der beiden Argumente:
expr 45 != 55

Hier zeigt die Ausgabe 1 an, dass 45 ungleich 55 ist.
Auf diese Weise bietet der Befehl expr eine einfache und effektive Methode zum Vergleichen numerischer Werte.
Wie der Multiplikationsoperator (*) müssen auch die Operatoren <, > und != mit einem Backslash () maskiert werden. Andernfalls könnten sie von der Shell als Sonderzeichen interpretiert werden.
Ermitteln der Länge eines Strings mit expr
Um die Länge eines Strings mit dem Befehl expr zu ermitteln, können Sie die Methode length verwenden. Dieser Operator gibt die Anzahl der im angegebenen String vorhandenen Zeichen an die Ausgabe zurück.
Um beispielsweise die Länge der Zeichenfolge „How To Geek“ zu ermitteln, führen Sie diesen Befehl aus:
expr length 'How To Geek'

Die Ausgabe ist 11, da die Zeichenfolge neun Zeichen und zwei Leerzeichen enthält. Wenn Sie die Länge einer Zeichenfolge ohne Leerzeichen ermitteln möchten, können Sie andere Befehle wie tr oder awk verwenden, um diese zuerst zu entfernen. Beispiel:
expr length “$(echo 'How To Geek' | tr -d ' ')”

Die Ausgabe ist neun, da der Befehl tr alle Leerzeichen in der Zeichenfolge löscht, bevor er sie an den Befehl expr length übergibt.
Zwei Zeichenfolgen mit expr abgleichen
Eine der Operationen, die expr bietet, ist der Vergleich zweier Zeichenfolgen. Verwenden Sie dazu den Doppelpunkt-Operator (:) mit dem expr-Befehl. Dieser Operator gibt die Anzahl der Zeichen zurück, die am Anfang beider Zeichenfolgen übereinstimmen.
Die Syntax für die Verwendung dieses Operators lautet:
expr string1 : string2
Dies vergleicht die beiden Zeichenfolgen und gibt die Anzahl der übereinstimmenden Zeichen vom Anfang der Zeichenfolge zurück.
Beispielsweise gibt der folgende Befehl fünf aus, da beide Zeichenfolgen die ersten fünf Zeichen gemeinsam haben:
expr 'HowToGeek' : 'HowTo'

Betrachten Sie ein weiteres Beispiel, bei dem zwei gegebene Zeichenfolgen gleich sind:
expr 'How To Geek' : 'How To Geek'

Die Ausgabe ist 11, da beide Zeichenfolgen alle Zeichen gemeinsam haben, einschließlich der Leerzeichen.
Wenn kein passendes Zeichen vorhanden ist, ist die Ausgabe Null:
expr 'How To Geek' : 'Linux'

Inkrementieren und Dekrementieren einer Variable mit expr
Der Befehl expr kann auch einen Ausdruck auswerten, der den Wert einer Variablen erhöht oder verringert. Außerdem können Sie das Ergebnis einer neuen Variablen zuweisen.
Betrachten Sie das folgende Beispiel, in dem wir eine Variable „a“ definiert und ihren Wert mit dem Befehl expr erhöht haben:
a=20
a=`expr $a + 1`
echo $a

Um den Variablenwert zu dekrementieren, verwenden Sie die gleiche Syntax, ersetzen Sie jedoch das Additionszeichen durch ein Subtraktionszeichen:
a=20
a=`expr $a – 1`
echo $a

Extrahieren einer Teilzeichenfolge mit expr
Um eine Teilzeichenfolge aus einer gegebenen Zeichenfolge zu extrahieren, können Sie den Befehl expr mit einem substr-Operator verwenden. Auf diese Weise können Sie bestimmte Informationen aus einem längeren Text extrahieren, wie etwa Namen, Datum oder einen beliebigen Code. Sie können diesen Operator auch verwenden, um unerwünschte Zeichen oder Leerzeichen aus einer Zeichenfolge zu entfernen.
Betrachten Sie die folgenden Beispielbefehle, bei denen eine neue Zeichenfolge initialisiert wird. Danach erhalten wir mit dem Befehl expr das zweite bis fünfte Zeichen aus der Zeichenfolge „HowToGeek“:
a=HowToGeek
b=`expr substr $a 2 5`
echo $b

Ausführen von expr-Operationen mit einem Shell-Skript
Um die Ausdrucksverarbeitung mit dem Befehl expr zu automatisieren, können Sie ein benutzerdefiniertes Shell-Skript erstellen. Shell-Skripte sind Mehrzweck-Tools, mit denen Sie mit weniger mehr erreichen können. Mit Shell-Skripten können Sie sich wiederholende Aufgaben automatisieren, Daten bearbeiten und komplexe Berechnungen durchführen.
Sie können beispielsweise mit dem Befehl expr ein Skript zum Addieren zweier Zahlen erstellen. Zuerst müssen Sie eine Datei mit der Erweiterung „.sh“ erstellen, z. B. „my_script.sh“. Dadurch erkennt die Shell, dass es sich um eine Skriptdatei handelt. Als Nächstes müssen Sie einen Code schreiben, der zwei Zahlen als Eingabe verwenden und deren Summe ausgeben kann. Hier ist ein Beispielskript, das dies kann:
echo “Geben Sie zwei Zahlen ein”
read a
read b
sum=`expr $a + $b`
echo “Summe zweier Zahlen ist = $sum”

Dieses Skript verwendet den Befehl expr, um arithmetische Operationen an den Variablen „a“ und „b“ auszuwerten. Der Befehl echo druckt eine Nachricht auf die Standardausgabe, während der Befehl read eine Zeile von der Standardeingabe liest und in eine Variable einfügt.
Um dieses Skript ausführbar zu machen, führen Sie als Nächstes den Befehl chmod aus:
chmod +x my_script.sh
Fahren Sie nun mit der Ausführung des Skripts fort, indem Sie Folgendes ausführen:
./my_script.sh

Sie werden aufgefordert, zwei Zahlen einzugeben. Nachdem Sie die Zahlen eingegeben haben, sehen Sie, dass das Skript die Summe beider Zahlen auf dem Bildschirm anzeigt. Sie können das Skript auch ändern, um andere Operationen oder Aufgaben nach Ihren Bedürfnissen auszuführen.
Probieren Sie einige alternative Linux-Befehle aus
Dieser Artikel konzentriert sich hauptsächlich auf den Befehl expr, aber Sie können auch einige andere Befehle für verschiedene Operationen ausprobieren. Diese Befehle umfassen declare, let und bc. Alle diese Befehlszeilentools können einfache bis komplizierte mathematische Operationen an definierten Werten ausführen.
Der Befehl declare kann Variablen und ihre Attribute erstellen und ändern. In ähnlicher Weise wertet der Befehl let arithmetische Ausdrücke für Shell-Variablen aus. Schließlich ist bc ein Befehlszeilenrechner, der Arithmetik mit beliebiger Genauigkeit und verschiedene mathematische Funktionen unterstützt. Es kann auch eine Skriptsprache analysieren, die Schleifen, bedingte Anweisungen und Variablen unterstützt.
Leave a Reply
You must be logged in to post a comment.