Ждать (команда) - Wait (command)
Разработчики) | AT&T Bell Laboratories |
---|---|
изначальный выпуск | Ноябрь 1973 г. |
Операционная система | Unix и Unix-подобный |
Тип | Команда |
В Unix снаряды, ждать
это команда который приостанавливается до выполнения фоновый процесс закончился.
использование
ждать [п]
куда п это пид или же идентификатор вакансии текущего выполняющегося фонового процесса (задания). Если п не задан, команда ожидает завершения всех заданий, известных вызывающей оболочке.
ждать обычно возвращает статус выхода последней работы, которая была прекращена. Он также может вернуть 127, если п указывает несуществующее задание или ноль, если не было заданий для ожидания.
Потому что ждать
необходимо знать о таблице заданий текущей среды выполнения оболочки, она обычно реализуется как встроенная оболочка.
Пример
Эта команда может быть полезна, когда часть сценария может выполняться параллельно для реализации барьера, где предстоящий раздел зависит от успешного завершения предыдущих разделов.
В следующем примере будет получен src / каталог с машины с именем Иона с помощью rsync и одновременно обновлять библиотеки, от которых зависит эта программа, перед построением комбинации.
#! / usr / bin / env bash# Скрипт параллельного обновления, использующий команду ожидания# Обновить локальную копиюrsync iona: src /. &# Обновить необходимые библиотеки или выйти с сообщением об ошибке, если make по какой-то причине не удаласьmake -C lib || выход 1# Подождите, пока rsync завершится (возможно, уже произошло) и завершите работуждатьделать
Дождитесь указанного идентификатора управления заданием:
$ ls -R /> / dev / ноль 2>&1 & # запуск любого длительного фонового процесса[2] 1986$ ждать %2 # ожидает завершения фонового задания номер 2, затем возвращает