TGViewer
LinuxCamp | DevOps LinuxCamp | DevOps @linuxcamp_tg · 13.6K subscribers
Post #163 6.71K
Команды управления заданиями

В прошлый раз мы узнали о фоновом выполнении команд и дали определение термину "задание".

Сегодня рассмотрим, встроенные в оболочку средства, которые позволяют управлять заданиями: bg, fg, jobs, kill.

Давайте для начала запустим в фоне несколько команд sleep, которые ничего не будет делать в течение заданного времени:


$ sleep 10 & sleep 20 & sleep 30 &


Чтобы выяснить, за какими заданиями следит оболочка, используется команда jobs:


$ jobs
[1] Running sleep 10 &
[2]- Running sleep 20 &
[3]+ Running sleep 30 &


[1] - номер задания, который используется для идентификации. Полезен, когда необходимо "ткнуть пальцем" в определенный элемент, используя: fg, bg, kill;

"" (отсутствие знака) - обозначает то, что задание не является ни текущим ни предыдущим, но находится в списке.

"+" указывает на текущее задание, по отношению к которому будут выполнены команды, если не указывать номер. "-" указывает на предыдущее задание;

Running - статус задачи. Также возможны: Stopped, Done, Terminated, Killed. Статусы могут меняться в ответ на отправленный сигнал (SIGKILL, SIGSTOP и т.д.);

Теперь выведем второе задание на передний план. Для этого будем использовать команду fg с указанием номера:


$ fg %2
sleep 20


Если в параметры ничего не вносить, команда выполнится для последнего задания (со знаком +).

Для того, чтобы перенести выполнение в фон и не блокировать терминал, используется bg.

Для примера запустим задание переднего плана, остановим его выполнение "Ctrl + Z" и отправим его в фоновый режим:


$ nm-applet
^Z
[1]+ Stopped nm-applet

$ bg
[1]+ nm-applet &

$ jobs
[1]+ Running nm-applet


К целевому заданию также можно обратиться по номеру:


$ jobs
[1]- Stopped sleep 200
[2]+ Running sleep 100 &

$ bg %1
[1]+ sleep 200 &


С заданиями "kill %n" можно использовать для принудительного завершения:


$ kill %1
[1]+ Terminated sleep 200


По умолчанию отправляется сигнал SIGTERM, при желании, можно указать любой другой:


$ kill -9 %1
[1]+ Killed sleep 200


LinuxCamp
  • 🔥 30
  • 👍 21
  • ❤‍🔥 3
  • ⚡ 3
  • 🥰 1
More from @linuxcamp_tg
  1. Sep 28, 2026Проекту GNU вчера исполнилось 43 года 1983 год: Ричард Столлман объявил планы разработать…
  2. Sep 25, 2026Linux будет работать на ноутах с Snapdragon X2. Qualcomm добавляет полноценную поддержку L…
  3. Sep 24, 2026Так все по делу)) Советует же самый быстрый фикс LinuxCamp | #memes
  4. Sep 23, 2026Планы на 3 октября — прийти на RWB Infra x Security Meetup Мы направим прожекторы на инфра…
  5. Sep 22, 2026Ещё одна рекордная неделя для AI-разработки в Linux. На прошлой неделе в ядро попало 1 634…
  6. Sep 17, 2026Открыл плейлист, а как выйти - непонятно 😁 LinuxCamp | #memes
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →