Expr: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 29: Zeile 29:
 
* In modernen Bash-Skripten kann stattdessen arithmetische Substitution verwendet werden:
 
* In modernen Bash-Skripten kann stattdessen arithmetische Substitution verwendet werden:
 
   echo $((7 + 5))
 
   echo $((7 + 5))
 +
=== 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 
 +
* Speichern Sie das Ergebnis in einer neuen Variablen:
 +
  SUMME=$(expr $A + $B) 
 +
  echo $SUMME
 +
 +
== 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 
 +
* Überlegen Sie, was die Befehlssubstitution in diesem Beispiel bewirkt.

Version vom 17. Oktober 2025, 14:21 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))

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  
  • Speichern Sie das Ergebnis in einer neuen Variablen:
 SUMME=$(expr $A + $B)  
 echo $SUMME

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  
  • Überlegen Sie, was die Befehlssubstitution in diesem Beispiel bewirkt.