Если я это сделаю ping google.com &
, процесс перейдет в фоновый режим и продолжит показывать мне детали ping. Я все еще могу использовать терминал с другими командами, но вывод ping и вывод других команд будут перемешаны (что не является проблемой), но я не могу завершить этот процесс ping вообще.
Для этого я хочу вывести его на передний план, а затем нажать ctrl + c или что-то в этом роде. Я пробовал использовать fg
, но это тоже не сработало. Так как мне ping google.com &
вернуть его на передний план после того, как я нажму клавишу return в конце моей команды ping?
решение1
fg
является правильной командой для перевода задания на передний план, но если запущено более одного задания, следует указать номер задания. Если ввести только fg
, последнее фоновое задание (которое оболочка считает текущим) будет переведено на передний план.
Получить текущие вакансии:
$ jobs
[1]+ ping google.com &
Переведите задание в приоритетный режим, указав номер:
fg %1
Команда может быть прервана выводом запущенного процесса, но она все равно будет работать, вы можете игнорировать прерывание.
Затем нажмите ctrl+ c, чтобы прервать и остановить процесс.
Как упоминалось в комментарии, вы также можете отправлять сигналы по номеру задания, напримерkill %1
Для полноты картины, если вы не использовали &
во время вызова процесса, вы можете отправить его в фоновый режим, сначала заморозив его с помощью ctrl+ z, а затем введяbg