Хотя bash сам по себе не имеет типа управления очередью «queue» или «stack», но у них есть контроль заданий (который существует в течение многих лет, возвращается к korn оболочке Unix System V), с помощью которых вы можете поместить процессы в фоновом режиме и управлять ими командой kill
DIR:/coreutils
skolodya@ubuntu:$ gedit &> /dev/null &
[1] 26742
DIR:/coreutils
skolodya@ubuntu:$ gnome-terminal &> /dev/null &
[2] 26767
DIR:/coreutils
skolodya@ubuntu:$ jobs
[2] + Running gnome-terminal >/dev/null 2>&1
[1] - Running gedit >/dev/null 2>&1
DIR:/coreutils
skolodya@ubuntu:$ kill -SIGSTOP %1
DIR:/coreutils
skolodya@ubuntu:$ jobs
[1] + Stopped (signal) gedit >/dev/null 2>&1
[2] - Running gnome-terminal >/dev/null 2>&1
DIR:/coreutils
skolodya@ubuntu:$ kill -SIGCONT %1
DIR:/coreutils
skolodya@ubuntu:$ jobs
[1] + Stopped (signal) gedit >/dev/null 2>&1
[2] - Running gnome-terminal >/dev/null 2>&1
. Вывод этих команд в приведенном выше примере идет на /dev/null, но, конечно, если это приложение командной строки, вы хотите перенаправить вывод где-нибудь, вы можете просмотреть его позже. Например, named pipe.
DIR:/coreutils
skolodya@ubuntu:$ mkfifo test.fifo
DIR:/coreutils
skolodya@ubuntu:$ apt-cache search 1> test.fifo &
[1] 27775
DIR:/coreutils
skolodya@ubuntu:$ cat test.fifo | head -n 3
screen - terminal multiplexer with VT100/ANSI terminal emulation
screen-dbg - Debugging symbols for GNU Screen
asic0x-dkms - iBurst USB modem driver in DKMS format
Здесь я перенаправляю stdout (дескриптор файла 1) в созданный мной канал и просматриваю его позже. Это можно сделать с помощью нескольких команд, создав несколько именованных каналов.
Боковое примечание: можно было бы скриптировать что-то с этими параметрами, по крайней мере, ИМХО, проще просто использовать эти методы управления заданиями самостоятельно.
Вы можете продать свой модифицированный Ubuntu, однако вам придется выпустить его под лицензией GPL, и, следовательно, он должен быть открытым. См. Более подробное обсуждение здесь.
Изменить: как указывает Дэвид Фёрстер, Ubuntu содержит компоненты с разными лицензиями (GPL является самым распространенным). В зависимости от того, что вы распространяете, вам необходимо будет соблюдать лицензии каждого компонента, который вы используете.
Вы можете продать свой модифицированный Ubuntu, однако вам придется выпустить его под лицензией GPL, и, следовательно, он должен быть открытым. См. Более подробное обсуждение здесь.
Изменить: как указывает Дэвид Фёрстер, Ubuntu содержит компоненты с разными лицензиями (GPL является самым распространенным). В зависимости от того, что вы распространяете, вам необходимо будет соблюдать лицензии каждого компонента, который вы используете.