In diesem Fall ping google.com &
tritt der Vorgang in den Hintergrund und zeigt mir weiterhin die Ping-Details an. Ich kann terminal immer noch mit anderen Befehlen verwenden, aber die Ausgabe von ping und die Ausgabe von anderen Befehlen werden verwechselt (was kein Problem ist), aber ich kann diesen Ping-Vorgang überhaupt nicht beenden.
Dazu möchte ich es in den Vordergrund bringen und dann Strg + C oder so drücken. Ich habe es versucht fg
, aber es hat auch nicht funktioniert. Wie komme ich ping google.com &
wieder in den Vordergrund, nachdem ich am Ende meines Ping-Befehls die Eingabetaste gedrückt habe?
command-line
job-control
posixKing
quelle
quelle
jobs
diese Option , um die Job-IDjid
des Hintergrundprozesses zu ermitteln, undkill %jid
beenden Sie sie anschließend.Antworten:
fg
ist der richtige Befehl, um einen Job in den Vordergrund zu stellen. Wenn jedoch mehr als ein Job ausgeführt wird, müssen Sie die Jobnummer angeben. Wenn Sie nur tippenfg
, wird der letzte Hintergrundjob (der von der Shell als aktueller Job betrachtet wird) in den Vordergrund gerückt.Erhalten Sie die aktuellen Jobs:
Vordergrund des Jobs durch Angabe der Nummer:
Der Befehl wird möglicherweise durch die Ausgabe des laufenden Prozesses unterbrochen, funktioniert jedoch weiterhin. Sie können die Unterbrechung ignorieren.
Drücken Sie dann ctrl+ c, um den Vorgang zu unterbrechen und anzuhalten
Wie in einem Kommentar erwähnt, können Sie beispielsweise auch Signale nach Auftragsnummer senden
kill %1
Wenn Sie
&
zum Zeitpunkt des Aufrufs des Prozesses den nicht verwendet haben, können Sie ihn der Vollständigkeit halber in den Hintergrund stellen, indem Sie zuerst mit ctrl+ einfrieren zund dann eingebenbg
quelle
fg
ohne Argument scheint auch zu funktionieren, zumindest wenn nur ein Hintergrundjob vorliegt.Um die gestellte Frage zu beantworten: Wie wird die Ausgabe eines Prozesses in den Hintergrund und in den Vordergrund gesendet? Der
tee
Befehl bewirkt Folgendes:Beim Rechnen ist tee ein Befehl in Befehlszeileninterpretern (Shells), die Standard-Streams verwenden, die die Standardeingabe lesen und sowohl in die Standardausgabe als auch in eine oder mehrere Dateien schreiben, wodurch die Eingabe effektiv dupliziert wird. https://en.wikipedia.org/wiki/Tee_(command)
quelle