У меня ситуация, когда мне нужно:
На данный момент я запустил флаги в сценариях B - D, которые устанавливают, выполняется ли сценарий по-прежнему, и после запуска четырех сценариев сценарий A находится в цикле ожидания, проверяя эти файлы флагов.
Есть лучший способ сделать это?
Фон состоит в том, что это сценарий резервного копирования для сервера AIX, использующий моментальные снимки - сценарий A берет моментальные снимки JFS2 в файловых системах, которые мы хотим создать резервную копию (все они должны быть выполнены одновременно, поскольку у нас есть связанные данные, распределенные по разным файловым системам. - это не может быть изменено), сценарии B - D выполняют фактическое резервное копирование этих файловых систем из моментальных снимков (три rsync на другой сервер и одно резервное копирование на ленту), а затем сценарий A удаляет моментальные снимки после того, как все копии файлов (включая лента) завершены.
С помощью bash вы можете сделать это:
init # do the preamble setup of script A
scriptB & # start in background
scriptC & # start in background
scriptD & # start in background
wait # wait for all background jobs to finish
cleanup # do the cleanup part of script A