1. kein Aufhebens
Führen Sie das Programm so aus, dass das Auflegesignal ignoriert wird Weitere Hinweise Der Befehl „nohup“ kann das Programm so ausführen, dass das Auflegesignal ignoriert wird und die Ausgabeinformationen des ausgeführten Programms nicht auf dem Terminal angezeigt werden. Unabhängig davon, ob Sie die Ausgabe des Befehls „nohup“ an ein Terminal umleiten, wird die Ausgabe an die Datei „nohup.out“ im aktuellen Verzeichnis angehängt. Wenn die Datei nohup.out im aktuellen Verzeichnis nicht beschreibbar ist, wird die Ausgabe in die Datei $HOME/nohup.out umgeleitet. Wenn keine Datei zum Anhängen erstellt oder geöffnet werden kann, kann der durch den Befehlsparameter angegebene Befehl nicht aufgerufen werden. Wenn es sich bei der Standardfehlerausgabe um ein Terminal handelt, wird die gesamte Ausgabe des angegebenen Befehls, die an die Standardfehlerausgabe geschrieben wird, an denselben Dateideskriptor wie die Standardausgabe umgeleitet. Einfaches Beispiel:
Angeben von Ausgabeinstanzen
nohup-Befehl > myout.file 2>&1 & Andere verwandte Befehle Strg + Z #Sie können einen im Vordergrund ausgeführten Befehl in den Hintergrund stellen und in einen angehaltenen Zustand versetzen. fg #Hintergrundaufgaben auf Vordergrundausführung umschalten bg #Ändern Sie einen im Hintergrund angehaltenen Befehl, damit seine Ausführung im Hintergrund fortgesetzt wird. Wenn im Hintergrund mehrere Befehle laufen, können Sie mit bg %jobnumber den ausgewählten Befehl aufrufen. jobs #Überprüfen Sie den Status der Hintergrundausführung. Mit der Option jobs -l können Sie die PID aller Aufgaben anzeigen. ps -ef | grep-Befehl oder ps aux | grep-Befehl #Prozess anzeigen kill -9 process id #töte den entsprechenden Prozess,
Eine erweiterte Verwendung ist wie folgt:
ps aux | grep-Befehl | grep -v grep | awk '{print $1}' | xargs kill -9 #Das bedeutet, die Prozess-ID direkt über den Befehl abzurufen und den Prozess direkt zu beenden. 2. Bildschirm
Zum Umschalten des Befehlszeilenterminals a. Sitzungswiederherstellung: Solange der Bildschirm selbst nicht beendet wird, können die darin laufenden Sitzungen wiederhergestellt werden. Dies ist besonders nützlich für Benutzer, die sich remote anmelden - selbst wenn die Netzwerkverbindung verloren geht, Benutzer verlieren außerdem nicht die Kontrolle über bereits geöffnete Befehlszeilen-Sitzungen. Melden Sie sich einfach erneut beim Host an und führen Sie screen -r aus, um die Sitzung fortzusetzen. Wenn Sie die Anwendung vorübergehend verlassen, können Sie auch den Befehl „Detach“ ausführen, um den Bildschirm anzuhalten (in den Hintergrund zu wechseln) und gleichzeitig sicherzustellen, dass das darin enthaltene Programm normal ausgeführt wird. b. Mehrere Fenster In der Bildschirmumgebung laufen alle Sitzungen unabhängig voneinander und haben ihre eigenen Nummern, Eingänge, Ausgänge und Fenster-Caches. Benutzer können mithilfe von Tastenkombinationen zwischen verschiedenen Fenstern wechseln. Und Sie können die Ein- und Ausgabe jedes Fensters frei umleiten. Der Bildschirm implementiert grundlegende Textoperationen wie Kopieren und Einfügen und bietet auch Funktionen ähnlich wie Bildlaufleisten. Sie können den Verlauf der Fensterbedingungen anzeigen. Darüber hinaus können Fenster partitioniert und benannt sowie die Aktivität von Hintergrundfenstern überwacht werden. Über den Sitzungsfreigabebildschirm können sich ein oder mehrere Benutzer mehrmals von verschiedenen Terminals aus bei einer Sitzung anmelden und alle Funktionen der Sitzung gemeinsam nutzen (beispielsweise können sie genau dieselbe Ausgabe sehen). Es bietet außerdem einen Mechanismus für Fensterzugriffsberechtigungen. Das Fenster kann mit einem Passwort geschützt werden. c. Installation des Bildschirms
yum install -y Bildschirm Grundlegende Syntax screen -AmRvx -[ls -wipe][-d <Jobname>][-h <Zeilenanzahl>][-r <Jobname>][-s ][-S <Jobname>] Optionen -A Passt die Größe aller Fenster an die Größe des aktuellen Terminals an. -d <Jobname> Den angegebenen Bildschirmjob offline nehmen. -h <Zeilenanzahl> gibt die Anzahl der Pufferzeilen für das Fenster an. -m Erzwingt die Erstellung eines neuen Bildschirmjobs, auch wenn bereits einer ausgeführt wird. -r <Jobname> Stellt den Offline-Bildschirmjob wieder her. -R Versuchen Sie zuerst, Offline-Jobs wiederherzustellen. Wenn der Offline-Job nicht gefunden werden kann, wird ein neuer Bildschirm-Job erstellt. -s gibt die Shell an, die beim Erstellen eines neuen Fensters ausgeführt werden soll. -S <Jobname> gibt den Namen des Bildschirmjobs an. -v Versionsinformationen anzeigen. -x Stellt den zuvor offline gegangenen Bildschirmjob wieder her. -ls oder --list zeigt alle aktuellen Bildschirmjobs an. -wipe prüft alle aktuellen Bildschirmaufträge und löscht diejenigen, die nicht mehr verwendbar sind. Allgemeine Bildschirmparameter screen -S IhrName -> erstellt eine neue Sitzung mit dem Namen IhrName screen -ls -> Alle aktuellen Sitzungen auflisten screen -r yourname -> Zurück zur yourname-Sitzung screen -d IhrName -> Sitzung remote trennen screen -d -r yourname -> Beenden Sie die aktuelle Sitzung und kehren Sie zur yourname-Sitzung zurück In jeder Bildschirmsitzung beginnen alle Befehle mit Strg+A (Strg + A). Strg + a ? -> Alle Tastenbelegungsinformationen anzeigen Strg + ac -> Erstellt ein neues Fenster mit einer Shell und wechselt dorthin Strg + an -> Weiter, zum nächsten Fenster wechseln Strg + ap -> Zurück, zum vorherigen Fenster wechseln Strg + a 0..9 -> zum Fenster 0..9 wechseln Strg+a [Leertaste] -> Nacheinander von Fenster 0 zu Fenster 9 wechseln Strg + a Strg + a -> Zwischen den beiden zuletzt verwendeten Fenstern wechseln Strg + ax -> Sperren Sie das aktuelle Fenster und entsperren Sie es mit dem Benutzerkennwort Strg + Anzeige -> Trennen, die aktuelle Sitzung vorübergehend verlassen, die aktuelle Bildschirmsitzung (die mehrere Fenster enthalten kann) zur Ausführung in den Hintergrund versetzen und in den Zustand vor dem Aufrufen des Bildschirms zurückkehren. Zu diesem Zeitpunkt wird in der Bildschirmsitzung der in jedem Fenster (ob Vordergrund/Hintergrund) ausgeführte Prozess weiterhin ausgeführt, und selbst das Abmelden hat keine Auswirkungen darauf. Strg + Az -> aktuelle Sitzung in den Hintergrund stellen und mit dem fg-Befehl der Shell zurückkehren. Strg + aw -> Alle Fenster anzeigen Strg + at -> Zeit, Anzeige der aktuellen Uhrzeit und Systemauslastung Strg + ak -> Fenster beenden, Schließen des aktuellen Fensters erzwingen Strg + a -> Kopiermodus aktivieren. Im Kopiermodus können Sie zurückblättern, suchen und kopieren, genau wie mit vi Cb Zurück, Bild auf Siehe Vorwärts, Bild ab H (Großbuchstabe) Hoch, bewegen Sie den Cursor in die obere linke Ecke L Niedrig, bewegen Sie den Cursor in die untere linke Ecke 0 Zum Zeilenanfang gehen $ Zeilenende w ein Wort vorwärts, in Worteinheiten vorwärts gehen b ein Wort zurück, ein Wort zurückgehen Durch das erste Drücken der Leertaste wird der Startpunkt des Bereichs markiert, durch das zweite Drücken der Endpunkt. Esc beendet den Kopiermodus Strg + a ] -> Einfügen, fügt den gerade ausgewählten Inhalt im Kopiermodus ein Bedienungsbeispiele finden Sie unter: https://wangchujiang.com/linux-command/c/screen.html 3. Daemonize-Tool
##Installieren Sie git clone git://github.com/bmc/daemonize.git
sh konfigurieren && make && sudo make install
-a #In Ausgabedatei einbinden, anstatt den Standardwert zu löschen. Gilt nur, wenn -e und/oder -o angegeben ist. -e # Leitet die Ausgabe des Standardfehlers in die angegebene Datei um und ersetzt dabei /dev/null -o #Leitet den Ausgabestandard zur angegebenen Datei um und ersetzt dabei /dev/null -E Name=Wert #Umgebungsvariablen zum Hintergrundprogramm hinzufügen. Dieser Parametertyp muss das Format Name=Wert aufweisen. Parameter können mehrfach gesetzt werden. -c Verzeichnis #Passen Sie das Verzeichnis an, bevor Sie den Befehl ausführen. -p pidfile #Passen Sie Ihren eigenen PID-Speicherort an. -l Sperrdatei #Diese Datei wird überprüft, wenn eine einzelne Instanz gestartet wird. -u Benutzer #Passen Sie an, als wer das Programm ausgeführt wird. Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:- So installieren Sie Redis unter Linux, führen es im Hintergrund aus und richten das System für den automatischen Start ein
- So zeigen Sie im Hintergrund laufende Programme in Linux an und schließen sie
- Linux nohup, um Programme im Hintergrund auszuführen und anzuzeigen (nohup und &)
- So starten Sie ein JAR-Paket und führen es unter Linux im Hintergrund aus
- So zeigen Sie laufende Hintergrundprogramme in Linux an und beenden sie
- Eine kurze Analyse der Beispiele und Unterschiede bei der Verwendung von nohup und screen zum Ausführen von Hintergrundaufgaben in Linux
- Mehrere Möglichkeiten, Python-Programme im Linux-Hintergrund auszuführen
- So führen Sie Springboot im Hintergrund von Linux aus
- Linux-Hintergrund, in dem die Befehlsmethode „Node Service“ ausgeführt wird
- Lösen Sie das Problem der im Hintergrund laufenden Python-Nohup-Linux-Ausgabe
- Zusammenfassung der Methoden zum zuverlässigen Ausführen von Prozessen im Hintergrund unter Linux
- Detaillierte Erläuterung des Linux-Hintergrundbetriebs und -Herunterfahrens, Anzeige von Hintergrundaufgaben
- So führen Sie Linux-Befehle im Hintergrund aus
|