Wie kann ich einen angehaltenen Job unter Linux fortsetzen? Ich habe Emacs benutzt und versehentlich Strg-Z gedrückt, wodurch ich zurück zur Konsole geschossen bin. Ich kann es sehen, wenn ich "jobs" eingebe
[*****]$ jobs
[1]+ Stopped emacs test_queue.cpp
linux
sh
job-control
Bobby
quelle
quelle
Ctrl-z
und fahren dann fort. Offensichtlich können Sie Befehle ausführen, ohne Vim über den:!
Befehl ed zu verlassenAntworten:
Der Befehl
fg
ist das, was Sie verwenden möchten. Sie können ihm auch eine Auftragsnummer geben, wenn mehr als ein Auftrag gestoppt wurde.quelle
Die allgemeinen Jobsteuerungsbefehle unter Linux lauten:
Das sind so ziemlich alle. Notieren Sie die% vor der Auftragsnummer in den Befehlen - dies ist der Hinweis darauf, dass Sie von Aufträgen und nicht von Prozessen sprechen.
quelle
fg
und einCtrl-C
;)Sie können auch eingeben
%<process_name>
; Sie drücken in Emacs Strg-Z, geben dann%emacs
die Konsole ein und bringen sie wieder in den Vordergrund.quelle
Um die anderen Antworten zu ergänzen, können Sie mit bash das überspringen,
fg
wenn Sie eine Auftragsnummer angeben.Diese sind zum Beispiel gleichwertig und nehmen den letzten Job wieder auf:
Diese setzen Job # 4 fort:
quelle
fg
als%
.%
ist super, danke! Als Touch-Typist finde ich dasfg
sehr irritierend (gleicher Finger). Aber so ist es auchcd
.bg %
oder nur im Hintergrund starten% &
.Wenn Sie es nicht über das aktuelle Terminal gestartet haben
ps aux | grep <process name>
, suchen Sie mit die Prozessnummer (pid) und setzen Sie es fort mit:(Trotz des Namens
kill
handelt es sich lediglich um ein Tool zum Senden eines Signals an den Prozess, mit dem Prozesse miteinander kommunizieren können. Ein "Kill-Signal" ist nur eines von vielen Standardsignalen.)Bonus-Tipp: Umbrechen Sie das erste Zeichen des Prozessnamens mit
[]
, um zu verhindern, dass dergrep
Befehl selbst in den Ergebnissen angezeigt wird. zB umemacs
Prozess zu finden , verwenden Sieps aux | grep [e]macs
quelle
fg
?