Heim > Artikel > System-Tutorial > 5 Möglichkeiten im Zusammenhang mit dem Warten auf den Ruhezustand im Linux-System
In Linux-Systemen wird der Ruhezustand normalerweise verwendet, um Strom zu sparen oder um auf den Abschluss bestimmter wichtiger Vorgänge zu warten. In tatsächlichen Anwendungen können jedoch verschiedene Situationen auftreten, in denen Sie unterschiedliche Schlafwartemethoden verwenden müssen. In diesem Artikel werden Ihnen fünf häufig verwendete Methoden zum Warten auf den Ruhezustand unter Linux vorgestellt, damit Sie diese Technik besser verstehen und beherrschen können.
Mit den Befehlen „sleep“ und „wait“ in Linux können Sie Befehle mit einer ausgewählten Geschwindigkeit ausführen oder den Beendigungsstatus einer Aufgabe erfassen und anzeigen, nachdem Sie auf deren Abschluss gewartet haben. Sleep fügt einfach eine zeitgesteuerte Pause zwischen den Befehlen ein. Dem Wartebefehl wird mitgeteilt, dass er abgeschlossen ist, bis er abgeschlossen ist.
Schlafbefehl
Der Befehlsleep pausiert für die angegebene Zeit. Es wird normalerweise in Skripten verwendet, funktioniert aber auch auf der Befehlszeile. Im folgenden Beispiel wird der Ruhezustand zwischen zwei Datumsbefehlen für 30 Sekunden unterbrochen.
[root@localhost ~]# date ; sleep 30 ; date Thu Nov 11 05:06:44 EST 2021 Thu Nov 11 05:07:14 EST 2021
Der Befehl „sleep“ benötigt ein numerisches Argument als Anzahl der Sekunden. Sie können den Ruhezustand aber auch zu unterschiedlichen Zeiten einstellen, indem Sie im Parameter ein Zeichen hinzufügen:
[root@localhost ~]# date ; sleep 10s ; date Thu Nov 11 05:11:09 EST 2021 Thu Nov 11 05:11:19 EST 2021
Die Einschlafzeit kann auch weniger als 1 Sekunde betragen, fügen Sie einfach ein .
.
[root@localhost ~]# date ; sleep .1 ; date Thu Nov 11 05:14:03 EST 2021 Thu Nov 11 05:14:03 EST 2021Der Befehl
sleep wird normalerweise verwendet, um einen Befehl regelmäßig auszuführen, z. B. alle 10 Sekunden oder jede Minute, wenn Sie eine Aktivität überwachen möchten. Beispielsweise könnten Sie darauf warten, dass sich ein Kollege bei einem Dateiserver anmeldet. Sie könnten einen Befehl wie diesen ausführen:
[root@localhost ~]# while true ; do who ; sleep 100 ; done
Sie können Änderungen in der Speichernutzung beobachten.
[root@localhost ~]# while true ; do free -h ; sleep 5 ; done
Warten Sie den Befehl
Der Befehlwait erfasst den Beendigungsstatus des Hintergrundprozesses, nachdem er auf den Abschluss des Hintergrundprozesses gewartet hat. Sie können es auch in Skripten verwenden. Ersetzen Sie den Sleep-Befehl durch den Prozess, auf den Sie warten möchten. Dieses Skript zeigt auch den Exit-Status an.
#!/bin/bash sleep 5 & process_id=$! echo “PID: $process_id” wait $process_id echo “Exit status: $?”
Die erste Zeile startet den Sleep-Befehl im Hintergrund. Die zweite Zeile erhält die Prozess-ID des zuletzt ausgeführten Hintergrundprozesses$!
. Das Skript zeigt dann diese Informationen an, wartet auf den Abschluss des Prozesses und zeigt den Exit-Status an.
Wenn Sie wait -n verwenden (keine zusätzlichen Parameter erforderlich), wartet wait, bis alle Hintergrundaufgaben abgeschlossen sind. Im folgenden Beispiel wird der Befehl „sleep 6“ zuerst ausgeführt und das Skript beendet, die anderen beiden Sleep-Prozesse werden jedoch einige Sekunden lang im Hintergrund weiter ausgeführt.
#!/bin/bash sleep 15 & sleep 9 & sleep 6 & wait -n echo “First job has been completed.”
Wenn Sie es in das folgende Skript ändern, werden Sie darüber informiert, wann jeder Schlafvorgang abgeschlossen ist. Aus zeitlichen Gründen geschieht dies in umgekehrter Reihenfolge zu Beginn des Schlafvorgangs.
#!/bin/bash sleep 15 & sleep 9 & sleep 6 & wait -n echo “First job has been completed.” wait -n echo “Next job has been completed.” wait echo “All jobs have been completed.”
Hinweis: Der Warteprozess muss ein „untergeordneter Prozess“ sein (ein Prozess, der in der aktuellen Shell gestartet wird).
Kurz gesagt, es gibt viele Möglichkeiten, in Linux-Systemen zu schlafen und zu warten, und jede Methode hat ihre eigenen speziellen Anwendungsszenarien sowie Vor- und Nachteile. Nur wenn man ihre Grundprinzipien und Anwendungsbereiche richtig versteht, können sie besser genutzt werden. Ich glaube, dass Sie durch die Einleitung dieses Artikels ein tieferes Verständnis für das Warten auf den Linux-Ruhezustand erhalten.
Das obige ist der detaillierte Inhalt von5 Möglichkeiten im Zusammenhang mit dem Warten auf den Ruhezustand im Linux-System. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!