Aufgaben Bash until: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt)
Zeile 41: Zeile 41:
 
* Falls es fehlschlägt soll es 5 Sekunden warten bis es erneut versucht wird
 
* Falls es fehlschlägt soll es 5 Sekunden warten bis es erneut versucht wird
  
<syntaxhighlight lang=bash>
+
<!-- <syntaxhighlight lang=bash> -->
 +
<!-- #!/bin/bash -->
 +
 
 +
<!-- n="www.bash.profi" -->
 +
<!-- NAME=$(ping -c 1 $n 2>&1) -->
 +
 
 +
<!-- until ping -c 1 $n > /dev/null 2>&1; do -->
 +
<!-- sleep 5 -->
 +
<!-- NAME=$(ping -c 1 $n 2>&1) -->
 +
<!-- done -->
 +
 
 +
<!-- echo $NAME -->
 +
<!-- echo "Ping erfolgreich!" -->
 +
<!-- </syntaxhighlight> -->
 +
 
 +
<!-- * Skript ausführen und '''127.0.0.1 www.bash.profi''' in ''/etc/hosts'' eintragen -->
 +
 
 +
=Aufgabe 4 =
 +
 
 +
Schreibe ein Bash-Skript, das den Benutzer so lange nach einer Zahl fragt, bis eine gerade Zahl eingegeben wird. Gib dann die eingegebene Zahl aus.
 +
<!--
 +
Lösung:
 +
 
 +
bash
 +
Copy code
 
#!/bin/bash
 
#!/bin/bash
  
n="www.bash.profi"
+
number=0
NAME=$(ping -c 1 $n 2>&1)
 
  
until ping -c 1 $n > /dev/null 2>&1; do
+
until ((number % 2 == 0)); do
sleep 5
+
    read -p "Gib eine gerade Zahl ein: " number
NAME=$(ping -c 1 $n 2>&1)
 
 
done
 
done
  
echo $NAME
+
echo "Die eingegebene gerade Zahl ist: $number"
echo "Ping erfolgreich!"
+
Erklärung:
</syntaxhighlight>
 
  
* Skript ausführen und '''127.0.0.1 www.bash.profi''' in ''/etc/hosts'' eintragen
+
In diesem Skript wird die Variable "number" initialisiert und auf 0 gesetzt.
 +
Die Schleife "until" wird verwendet, um den Benutzer so lange nach einer Zahl zu fragen, bis eine gerade Zahl eingegeben wird.
 +
Die Bedingung in der Schleife ((number % 2 == 0)) überprüft, ob die eingegebene Zahl durch 2 teilbar ist (d. h. eine gerade Zahl).
 +
Wenn die Bedingung nicht erfüllt ist, wird der Benutzer erneut aufgefordert, eine Zahl einzugeben.
 +
Sobald eine gerade Zahl eingegeben wird, wird die Schleife beendet und die eingegebene Zahl mit der echo-Anweisung ausgegeben.
 +
Hinweis: Beachte, dass dieses Skript davon ausgeht, dass der Benutzer tatsächlich eine ganze Zahl eingibt. Eine zusätzliche Validierung könnte erforderlich sein, um sicherzustellen, dass die Eingabe eine gültige Zahl ist, um unerwartetes Verhalten zu verhindern.
 +
-->

Aktuelle Version vom 3. Juni 2023, 08:32 Uhr

Aufgabe 1

  • Schreiben Sie ein Skript, die ab 0 um 3 hochzählt bis 12 erreicht ist



Aufgabe 2

  • Das Skript soll nun bei 1 beginnen
  • Falls die Zahl größer als 12 wird, soll es wieder bei 0 beginnen



Aufgabe 3

  • Schreiben Sie ein Skript, welches versucht www.bash.profi anzupingen bis es erfolgreich ist
  • Falls es fehlschlägt soll es 5 Sekunden warten bis es erneut versucht wird




Aufgabe 4

Schreibe ein Bash-Skript, das den Benutzer so lange nach einer Zahl fragt, bis eine gerade Zahl eingegeben wird. Gib dann die eingegebene Zahl aus.