Expr

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

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.