Beim Beenden der Shell eines Linux-Systems werden normalerweise alle laufenden Prozesse beendet oder aufgelegt. Was tun Sie also, wenn Sie die Prozesse auch nach dem Beenden der Shell/des Terminals weiterhin ausführen möchten? Hier kommt der Befehl nohup ins Spiel.
Nohup Command
Nohup, kurz für no hang up ist ein Befehl in Linux-Systemen, der Prozesse auch nach dem Beenden der Shell oder des Terminals am Laufen hält.,
Nohup verhindert, dass die Prozesse oder Jobs das Signal SIGHUP (Signal AUFLEGEN) empfangen. Dies ist ein Signal, das beim Schließen oder Verlassen des Terminals an einen Prozess gesendet wird. In diesem Handbuch werfen wir einen Blick auf den Befehl nohup und zeigen, wie er verwendet werden kann.,
Nohup-Befehlssyntax
Die Nohup-Befehlssyntax lautet wie folgt;
nohup command arguments
ODER
nohup options
Lassen Sie uns sehen, wie der Befehl ins Spiel kommt
Überprüfen der Version von Nohup
Sie können zunächst die Version von Nohup mit der folgenden Syntax überprüfen
nohup --version
Ausgabe

Starten eines Prozesses mit Nohup
Wenn Sie Ihre Prozesse/Jobs am Laufen halten möchten, gehen Sie dem Befehl mit nohup div > wie unten gezeigt., Die Jobs werden weiterhin in der Shell ausgeführt und werden beim Verlassen der Shell oder des Terminals nicht beendet., opt to redirect the output to a different file as shown
nohup ./hello.sh > output.txt
Once again, to view the file run
cat output.txt
Output

To redirect to a file und zum Standardfehler und zur Ausgabe verwenden Sie das Attribut > filename 2>&1 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 die & div > Symbol am Ende des Befehls., In diesem Beispiel pingen wir google.com und es in den Hintergrund zu senden.,id=“8516ed8814″>
Ausgabe

Um den Prozess bei der Wiederaufnahme der Shell zu überprüfen, verwenden Sie den Befehl pgrep wie gezeigt
pgrep -a ping
Ausgabe

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

Zusammenfassung
- Alle Prozesse, die mit dem Befehl der Befehl nohup ignoriert das Signal SIGHUP auch beim Verlassen der Shell.,
- Sobald ein Auftrag mit dem Befehl nohup gestartet oder ausgeführt wird, steht stdin dem Benutzer nicht mehr zur Verfügung.
- Standardmäßig wird die
nohup.outals Standarddatei für stdout und stderr verwendet.
Leave a Reply