Управление работами
(job control) это возможность, которую предоставляют многие оболочки,
включая (Bash и Tcsh). Управление работами
Каждый раз, когда вы выполняете
программу, вы начинаете то, что известно, как процесс. Процесс - это
название для выполняемой программы. Команда ps
выдает перечень
имеющих место в данный момент процессов. Вот пример:
/home/larry# ps
PID TT STAT TIME COMMAND
24 3 S 0:03 (bash)
161 3 R 0:00 ps
/home/larry#
PID (Process IDentificator), перечисленные в первой колонке, это неповторяющиеся числа приписанные всем идущим процессам.
Последний столбец (COMMAND)
дает имя выполняемой команды. Здесь мы видим только процессы, которые инициировал
Larry. (В системе выполняется и много других процессов. Команда ``ps -aux
''
может выдать перечень всех происходящих в данный момент процессов).
В выведенном перечне указаны
bash
(это оболочка, используемая Larry) и сама команда ps
.
Как вы видите, bash выполняется параллельно с командой ps
. bash
выполнит ps
, когда Larry введет команду. После окончания ps
(после того, как выдана таблица процессов), управление возвращается к процессу
bash
, который выдает на экран подсказок готовности к приему новых
команд.
Выполняемый процесс известен shell как работа. Термины процесс и работа взаимозаменяемы. Однако процесс обычно воспринимается, как "работа", когда речь идет об управлении работами (job control)- свойстве shell, позволяющем уделять внимание нескольким независимым работам.
В большинстве случаев пользователи выполняют в каждый момент времени одну работу, ту которая соответствует последней переданной shell команде. Однако, используя управление работами, вы можете одновременно выполнять несколько работ, по необходимости переключаясь с одной на другую. Какая от этого польза? Давайте предположим, что вы редактируете текстовый файл и неожиданно хотите прерваться и сделать что-то другое. С помощью управления работами вы можете отложить редактирование и, вернувшись к подсказке shell, начать какую-то другую работу. После этого вы можете вернуться к редактированию, именно к тому месту, где вы прервали редактирование. Это всего один пример. Управление работами очень полезно на практике.