#bash

Как запустить фоновый процесс?

Добавить вконце команды амперсанд:

sleep 30 &

Как сделать текущий процесс фоновым?

CTRL + Z

Как перейти в последний запущенный фоновый процесс?

fg

Как вывести список всех фоновых процессов?

jobs

Как перейти в конкретный фоновый процесс?

fg 2

Добавить в начало скрипта:

set -euxo pipefail

Что всё это значит:

set -e

set -e - прекращает выполнение скрипта если команда завершилась ошибкой, выводит в stderr строку с ошибкой. Обойти эту проверку можно добавив в пайплайн к команде true: mycommand | true.

set -u

set -u - прекращает выполнение скрипта, если встретилась несуществующая переменная.

set -x

set -x - выводит выполняемые команды в stdout перед выполненинем.

set -o pipefail

set -o pipefail - прекращает выполнение скрипта, даже если одна из частей пайпа завершилась ошибкой. В этом случае bash-скрипт завершит выполнение, если mycommand вернёт ошибку, не смотря на true в конце пайплайна: mycommand | true.