Expr: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „==Der expr-Befehl== Erlaubt die Durchführung komplexer Stringoperationen und Ganzzahlarithme­tik. *expr 7 + 5 12 *expr 7 \* 5 35 *expr 7 / 5 1 *expr 7 –…“)
 
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
==Der expr-Befehl==
+
== expr ==
Erlaubt die Durchführung komplexer Stringoperationen und Ganzzahlarithme­tik.
+
 
*expr 7 + 5
+
*Der Befehl expr führt einfache Ganzzahlarithmetik und Stringoperationen direkt in der Shell aus. 
  12
+
*Er war lange Zeit das Standardwerkzeug für Berechnungen in POSIX-Shells und ist auch heute noch in minimalistischen Umgebungen nützlich.
*expr 7 \* 5
+
*Das Ergebnis wird auf die Standardausgabe geschrieben.
  35
+
 
*expr 7 / 5
+
;Beispiele für Ganzzahlarithmetik
  1
+
*expr 7 + 5
*expr 7 5
+
  12
  2
+
*expr 7 \* 5
*expr 7 % 5
+
  35
  2
+
*expr 7 / 5
*ZAHL=5 ; ZAHL=$(expr $ZAHL + 1) ; echo $ZAHL
+
  1
  6
+
*expr 7 - 5
 +
  2
 +
*expr 7 % 5
 +
  2
 +
 
 +
;Mit Variablen
 +
*ZAHL=5 ; ZAHL=$(expr $ZAHL + 1) ; echo $ZAHL
 +
  6
 +
 
 +
;Hinweise
 +
*Operatoren müssen durch Leerzeichen getrennt werden. 
 +
*Die Schreibweise $(expr …) ist eine Form der Befehlssubstitution – das Ergebnis eines Kommandos wird in eine Variable übernommen. 
 +
Dieser Mechanismus wird in einem späteren Abschnitt ausführlich erklärt. 
 +
*In modernen Bash-Skripten kann stattdessen arithmetische Substitution verwendet werden: 
 +
*echo $((7 + 5)) 
 +
12 
 +
 
 +
=== Aufgaben ===
 +
 
 +
== Rechnen mit expr ==
 +
*Führen Sie verschiedene arithmetische Operationen mit expr aus: 
 +
*expr 8 + 3 
 +
*expr 10 - 7 
 +
*expr 4 \* 6 
 +
*expr 15 / 4 
 +
*Beobachten Sie, dass alle Operatoren durch Leerzeichen getrennt sein müssen.
 +
 
 +
== Variablen verwenden ==
 +
*Legen Sie zwei Variablen an und berechnen Sie deren Summe: 
 +
*A=7 
 +
*B=5 
 +
*expr $A + $B 
 +
12 
 +
*Speichern Sie das Ergebnis in einer neuen Variablen: 
 +
*SUMME=$(expr $A + $B) 
 +
*echo $SUMME 
 +
12 
 +
 
 +
== Ausdruck in Skript einbinden ==
 +
*Erstellen Sie ein Skript namens rechnen.sh mit folgendem Inhalt:
 +
 
 +
<syntaxhighlight lang="bash">
 +
#!/bin/bash
 +
echo "Berechnung starten"
 +
ZAHL=10
 +
ERGEBNIS=$(expr $ZAHL \* 3)
 +
echo "Ergebnis: $ERGEBNIS"
 +
</syntaxhighlight>
 +
 
 +
*Machen Sie das Skript ausführbar und führen Sie es aus: 
 +
*chmod +x rechnen.sh 
 +
*./rechnen.sh 
 +
 
 +
Berechnung starten 
 +
Ergebnis: 30 
 +
 
 +
*Überlegen Sie, was die Befehlssubstitution in diesem Beispiel bewirkt.

Aktuelle Version vom 17. Oktober 2025, 14:23 Uhr

expr

  • Der Befehl expr führt einfache Ganzzahlarithmetik und Stringoperationen direkt in der Shell aus.
  • Er war lange Zeit das Standardwerkzeug für Berechnungen in POSIX-Shells und ist auch heute noch in minimalistischen Umgebungen nützlich.
  • Das Ergebnis wird auf die Standardausgabe geschrieben.
Beispiele für Ganzzahlarithmetik
  • expr 7 + 5
12  
  • expr 7 \* 5
35  
  • expr 7 / 5
1  
  • expr 7 - 5
2  
  • expr 7 % 5
2  
Mit Variablen
  • ZAHL=5 ; ZAHL=$(expr $ZAHL + 1) ; echo $ZAHL
6  
Hinweise
  • Operatoren müssen durch Leerzeichen getrennt werden.
  • Die Schreibweise $(expr …) ist eine Form der Befehlssubstitution – das Ergebnis eines Kommandos wird in eine Variable übernommen.
Dieser Mechanismus wird in einem späteren Abschnitt ausführlich erklärt.  
  • In modernen Bash-Skripten kann stattdessen arithmetische Substitution verwendet werden:
  • echo $((7 + 5))
12  

Aufgaben

Rechnen mit expr

  • Führen Sie verschiedene arithmetische Operationen mit expr aus:
  • expr 8 + 3
  • expr 10 - 7
  • expr 4 \* 6
  • expr 15 / 4
  • Beobachten Sie, dass alle Operatoren durch Leerzeichen getrennt sein müssen.

Variablen verwenden

  • Legen Sie zwei Variablen an und berechnen Sie deren Summe:
  • A=7
  • B=5
  • expr $A + $B
12  
  • Speichern Sie das Ergebnis in einer neuen Variablen:
  • SUMME=$(expr $A + $B)
  • echo $SUMME
12  

Ausdruck in Skript einbinden

  • Erstellen Sie ein Skript namens rechnen.sh mit folgendem Inhalt:
#!/bin/bash
echo "Berechnung starten"
ZAHL=10
ERGEBNIS=$(expr $ZAHL \* 3)
echo "Ergebnis: $ERGEBNIS"
  • Machen Sie das Skript ausführbar und führen Sie es aus:
  • chmod +x rechnen.sh
  • ./rechnen.sh
Berechnung starten  
Ergebnis: 30  
  • Überlegen Sie, was die Befehlssubstitution in diesem Beispiel bewirkt.