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

Nohup-Befehl unter Linux

Beim Verlassen der Shell eines Linux-Systems werden normalerweise alle laufenden Prozesse beendet oder aufgelegt. Was tun Sie also, wenn Sie die Prozesse weiterhin ausführen möchten, auch wenn Sie die Shell/das Terminal verlassen? Hier setzt der nohup-Befehl an kommt rein.

Nohup-Befehl

Nohup, kurz für no hang up, ist ein Befehl in Linux-Systemen, der Prozesse auch nach dem Verlassen der Shell oder des Terminals am Laufen hält.

Nohup verhindert, dass die Prozesse oder Jobs das Signal SIGHUP (Signal Hang UP) empfangen. Dies ist ein Signal, das beim Schließen oder Verlassen des Terminals an einen Prozess gesendet wird. In dieser Anleitung werfen wir einen Blick auf den Befehl nohup und demonstrieren, wie er verwendet werden kann.

Nohup-Befehlssyntax

Die Nohup-Befehlssyntax lautet wie folgt:

nohup command arguments

ODER

nohup options

Mal sehen, wie der Befehl ins Spiel kommt

Überprüfen der Version von Nohup

Sie können damit beginnen, die Version von Nohup mit der folgenden Syntax zu überprüfen

nohup --version

Ausgabe

Starten eines Prozesses mit Nohup

Wenn Sie Ihre Prozesse/Jobs am Laufen halten möchten, stellen Sie dem Befehl nohup voran Wie nachfolgend dargestellt. Die Jobs werden weiterhin in der Shell ausgeführt und werden beim Verlassen der Shell oder des Terminals nicht beendet.

nohup ./hello.sh 

Ausgabe

Aus der obigen Ausgabe wurde die Ausgabe des Befehls in nohup.out gespeichert um diesen Lauf zu überprüfen,

cat nohup.out

Ausgabe

Außerdem können Sie die Ausgabe wie gezeigt in eine andere Datei umleiten

nohup ./hello.sh > output.txt

Noch einmal, um die Datei run

anzuzeigen
cat output.txt

Ausgabe

Um zu einer Datei und zu Standardfehler und -ausgabe umzuleiten, verwenden Sie > filename 2>&1 Attribut wie gezeigt

nohup ./hello.sh > myoutput.txt >2&1 

Ausgabe

Starten eines Prozesses im Hintergrund mit Nohup

Um einen Prozess im Hintergrund zu starten, verwenden Sie den & Symbol am Ende des Befehls. In diesem Beispiel pingen wir google.com und senden es in den Hintergrund.

nohup ping google.com &

Ausgabe

Um den Vorgang beim Fortsetzen der Shell zu überprüfen, verwenden Sie pgrep Befehl wie gezeigt

pgrep -a ping

Ausgabe

Wenn Sie den laufenden Prozess stoppen oder beenden möchten, verwenden Sie den kill Befehl gefolgt von der Prozess-ID wie gezeigt

kill 2565

Ausgabe

Zusammenfassung

  1. Alle Prozesse, die mit dem nohup-Befehl ausgeführt werden, ignorieren das SIGHUP-Signal, selbst wenn die Shell verlassen wird.
  2. Sobald ein Job mit dem nohup-Befehl gestartet oder ausgeführt wird, ist stdin für den Benutzer nicht verfügbar.
  3. Standardmäßig nohup.out wird als Standarddatei für stdout und stderr verwendet.

Linux
  1. Linux-mv-Befehl

  2. Linux-Du-Befehl

  3. Linux-IP-Befehl

  4. Linux-cd-Befehl

  5. nohup-Befehlsoptionen in Linux

Welcher Linux-Befehl

Datumsbefehl in Linux

W-Befehl unter Linux

Bei Befehl unter Linux

Nohup Linux-Befehl mit Beispielen

Df-Befehl unter Linux