Der sleep
-Befehl ist in den meisten Linux-Distributionen standardmäßig verfügbar und ermöglicht es dem Benutzer, eine bestimmte Zeit zu warten, bevor der nächste Befehl ausgeführt wird. Es handelt sich um einen Befehl, der in der Shell verwendet wird, um eine Verzögerung oder Pause in der Ausführung von Skripten, Shell-Befehlen oder Prozessen zu erzeugen.
Syntax
sleep [Optionen] Zeit
Die Zeit kann entweder als Ganzzahl oder als Bruchzahl angegeben werden. Es können auch verschiedene Einheiten wie Sekunden, Minuten oder Stunden verwendet werden, um die Wartezeit anzugeben.
Einige Beispiele für häufig verwendete Optionen sind:
-s
oder--seconds
: Diese Option ermöglicht es Ihnen, die Wartezeit in Sekunden anzugeben. Zum Beispiel:-m
oder--minutes
: Mit dieser Option können Sie die Wartezeit in Minuten angeben. Beispiel:-h
oder--hours
: Diese Option ermöglicht es Ihnen, die Wartezeit in Stunden anzugeben. Beispiel:-V
oder--version
: Mit dieser Option können Sie die Version dessleep
-Befehls anzeigen lassen. Beispiel:
Beispiele
Verzögerung zwischen Befehlen
echo "1"
sleep 3
echo "2"
Hier werden zwei Befehle nacheinander ausgeführt, jedoch mit einer Pause von 3 Sekunden dazwischen.
Skriptverzögerung
#!/bin/bash
while true
do
echo "Aktion ausführen"
sleep 10
done
Das Skript startet eine Endlosschleife mit dem Befehl while true
. Innerhalb der Schleife wird die Aktion, in diesem Fall das Ausgeben der Textzeile „Aktion ausführen“, ausgeführt. Nachdem die Aktion ausgeführt wurde, wird der sleep
-Befehl verwendet, um eine Pause von 10 Sekunden einzulegen, bevor die Schleife erneut durchlaufen wird. Dadurch wird eine kontinuierliche Ausführung der Aktion mit einer 10-Sekunden-Verzögerung zwischen den Ausführungen erreicht.
Countdown-Timer
#!/bin/bash
for ((i=5; i>=1; i--))
do
echo "$i..."
sleep 1
done
echo "Zeit abgelaufen!"
Das Skript verwendet eine for-Schleife, die von 5 bis 1 herunterzählt. Innerhalb der Schleife wird die verbleibende Zeit mit dem Befehl echo
ausgegeben. Anschließend wird der sleep
-Befehl verwendet, um eine Pause von 1 Sekunde einzulegen, bevor die Schleife zur nächsten Iteration geht. Dadurch entsteht der Eindruck eines Countdowns, bei dem jede Sekunde die verbleibende Zeit angezeigt wird. Nachdem der Countdown abgelaufen ist, wird die Nachricht Zeit abgelaufen!
angezeigt.
Links
- https://wiki.ubuntuusers.de/sleep/ Der Link führt zu einem Artikel zum
sleep
-Befehl auf dem Ubuntuusers Wiki. - https://de.wikipedia.org/wiki/Sleep_(Kommandozeilenbefehl) Führt zur deutschen Wikipedia-Seite über den
sleep
-Befehl. Der Artikel bietet eine allgemeine Einführung in den Befehl, seine Verwendung und Optionen. - https://www.cyberciti.biz/faq/what-does-the-sleep-command-do-in-linux/: Der Artikel erklärt, wie der Befehl eingesetzt werden kann, um Zeitverzögerungen zu erzeugen, Skripte zu steuern und andere Aufgaben auszuführen. https://man7.org/linux/man-pages/man3/sleep.3.html Dieser Link führt zu den offiziellen Linux man pages für den
sleep
-Befehl.