GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So verwenden Sie den Linux-nohup-Befehl

Einführung

SIGHUP (Signal Hang UP) ist ein Signal, das einen Linux-Prozess beendet, wenn sein steuerndes Terminal geschlossen wird. Wenn Sie versehentlich ein Terminal schließen oder die Verbindung zum Server verlieren, werden alle zu diesem Zeitpunkt laufenden Prozesse automatisch beendet.

Verwenden von nohup Befehl ist eine Möglichkeit, den SIGHUP zu blockieren signalisieren und Prozesse auch nach dem Abmelden vom Terminal/der Shell abschließen lassen.

In diesem Artikel erfahren Sie, wie Sie nohup verwenden Befehl beim Ausführen von Prozessen.

nohup-Syntax

Die Syntax für die Verwendung von nohup Befehl ist:

nohup [command] [argument]

nohup-Optionen

Das nohup Der Befehl verfügt über zwei grundlegende Befehlsoptionen, die --help und die --version Optionen.

Um die Hilfemeldung anzuzeigen, führen Sie den folgenden Befehl aus:

nohup --help

Um Versionsinformationen anzuzeigen, geben Sie Folgendes ein:

nohup --version

Nohup-Beispiele

Es gibt eine Reihe von Möglichkeiten, nohup zu verwenden Befehl, einschließlich Ausführen des erforderlichen Prozesses im Hintergrund, Ausführen mehrerer Prozesse gleichzeitig oder Umleiten der Ausgabe in eine andere Datei.

Die folgenden Beispiele erläutern häufige Anwendungsfälle für nohup Befehl.

1. Ausführen eines Prozesses mit nohup

So führen Sie einen Befehl mit nohup aus Folgen Sie ohne Argumente einfach der Syntax:

nohup [command]

Die Shell ignoriert die Ausgabe und hängt sie an nohup.out an Datei.

Führen Sie zum Beispiel example.sh aus bash-Skript (ein einfaches Hello World -Skript) sollte Hello World anzeigen Nachricht in der nohup.out-Datei :

nohup bash example.sh

Überprüfen Sie den Inhalt der Datei mit:

cat nohup.out

2. Ausführen eines Prozesses im Hintergrund mit nohup

Das Ausführen eines Linux-Prozesses im Hintergrund entlastet das Terminal, in dem Sie arbeiten. Um einen Linux-Prozess im Hintergrund auszuführen, verwenden Sie nohup Befehl, fügen Sie & hinzu Symbol am Ende des Befehls:

nohup [command] &

Zum Beispiel, um example.sh auszuführen Bash-Skript im Hintergrund verwenden Sie den Befehl:

nohup bash example.sh &

Die Ausgabe zeigt die Shell-Job-ID und die Prozess-ID - [1] 7366 im Beispiel unten.

Geben Sie Folgendes ein, um den Befehl in den Vordergrund zu bringen:

fg

Die Ausgabe zeigt an, ob der Prozess im Gange oder abgeschlossen ist.

3. Ausführen mehrerer Prozesse im Hintergrund mit nohup

nohup bach -c '[command1] && [command2]'

Ersetzen Sie [command1] und [command2] mit den Befehlen Ihrer Wahl. Fügen Sie bei Bedarf weitere Befehle hinzu und achten Sie darauf, sie durch && zu trennen .

Um beispielsweise Datum/Uhrzeit und den Kalender des aktuellen Monats anzuzeigen, führen Sie Folgendes aus:

nohup bash -c 'date && cal'

Da die Ausgabe an nohup.out geleitet wird verwenden Sie den cat-Befehl, um den Inhalt der Datei aufzulisten und den obigen Befehl zu überprüfen:

cat nohup.out

Die Ausgabe zeigt das Datum und den Kalender, die mit dem obigen Befehl angefordert wurden.

4. Ausgabe in eine andere Datei umleiten

Wie im obigen Abschnitt erwähnt, nohup protokolliert alle Ausgabemeldungen und Fehler in nohub.out Datei.

Leiten Sie diese Nachrichten um, indem Sie innerhalb des Befehls einen benutzerdefinierten Speicherort angeben:

nohup [command] > /path/to/output/file.txt

Im folgenden Beispiel die Ausgabe für den Befehl nohup bash -c 'date && cal' wird zur output.txt umgeleitet Datei. Überprüfen Sie die Ausgabe mit dem Befehl:

cat output.txt

Linux
  1. So verwenden Sie den Linux-Grep-Befehl

  2. So verwenden Sie den Su-Befehl unter Linux

  3. So verwenden Sie den Linux-Bildschirmbefehl

  4. So verwenden Sie den Befehl ldconfig unter Linux

  5. So verwenden Sie den ipset-Befehl unter Linux

So verwenden Sie den Befehl zum Herunterfahren von Linux

So verwenden Sie grep unter Linux

So verwenden Sie den Mkdir-Befehl unter Linux

So verwenden Sie den Jobs-Befehl unter Linux

So verwenden Sie den Bildschirmbefehl unter Linux

Nohup-Befehl unter Linux