Каждая программа, выполняемая оболочкой, запускается в новом процессе Linux. Например, оболочка создает три процесса для выполнения следующего конвейера команд, который выводит на экран список файлов в текущем рабочем каталоге (список отсортирован по размеру файлов):
$ ls -l | sort -k5n | less
Все основные оболочки, за исключением Bourne shell, предоставляют интерактивные возможности, называемые управлением заданиями. Они позволяют пользователю одновременно выполнять несколько команд или конвейеров и манипулировать ими. В оболочках, допускающих управление заданиями, все процессы в конвейере помещаются в новую группу процессов или в задание. (В простейшем случае, когда командная строка оболочки содержит только одну команду, создается новая группа процессов, включающая только один процесс.) Каждый процесс в группе процессов имеет одинаковый целочисленный идентификатор группы процессов. Он совпадает с идентификатором процесса одного из процессов группы, который называется лидером группы процессов.
Ядро Linux позволяет всем процессам, входящим в группу, выполнять различные действия, в особенности доставку сигналов. Оболочки, допускающие управление заданиями, применяют эту функцию, чтобы позволить пользователю, как показано в следующем разделе, приостанавливать или возобновлять все процессы в конвейере.