Для одновременного запуска более одной команды мы можем использовать специальный символ & (амперсанд).
Другое использование & — это запуск команд в фоновом режиме.
В этом случае, однако, вы должны использовать & один раз в конце команды или скрипта. Например:
# [команда или скрипт] &

Использование & (амперсанд) для одновременного запуска команд

Чтобы запустить 2 команды одновременно, используйте специальный символ & между двумя или более командами.

Синтаксис:

# command1 & command2 & command3 ..

Например, если вы хотите запустить 3 команды «uname -a», «pwd» и «ls» одновременно, вы можете использовать:

# hostname & pwd & date
Вывод будет похож на что-то подобное:
# hostname & pwd & date
[1] 3253
[2] 3254
/root
geeklab
Sat Jan 18 05:46:07 UTC 2020
[1]-  Done                    hostname
[2]+  Done                    pwd

При использовании одиночного амперсанда, даже если команда не выполняется, запускаются следующие команды.

Использование && (двойной амперсанд) для одновременного запуска команд

Если вы хотите, чтобы второе задание / команда ожидало завершения первого задания / команды, используйте символ && между командами.

Таким образом, если во время исполнения в первой команде произойдет какая-либо ошибка, она остановится.

Например:

# hostname && pwd && date

Пример вывода:

$ hostname && pwd && date
geeklab01
/root
Sat Jan 18 12:23:34 IST 2020

Давайте попробуем использовать неправильную команду и посмотрим, будут ли выполнены следующие команды:

$ hostname && wrngcmd && date
geeklab01
-bash: wrngcmd: command not found
Как показано выше, последняя команда «date» не была выполнена, т.к. перед ней команда не было выполнена.
Поделитесь статьей:

Добавить комментарий