При запуске сценария оболочки и выполнении нескольких команд в фоновом режиме выполняются 2 команды с задержкой примерно 30 секунд?

Спасибо, мистер Томас, проблема решена, видимо, я так увлекся, что даже забыл, что использую машину, которая не настроена должным образом для проверки DNS, хотя клиент находился в сети NAT, это было сервер Cent OS не выдавал DHCP и, следовательно, не имел никакой конфигурации DNS, я тестировал клиента, добавляя записи вручную. Наконец, я протестировал его с помощью замазки, как и раньше, и прямой и обратный поиск успешно разрешаются. Спасибо всем за ваше руководство и время, ценю это.

0
18.03.2021, 15:39
1 ответ

Ваш код правильный.

Я думаю, вы ошибаетесь, когда говорите, что P2 и P3 «подождут» завершения P1, прежде чем начать.

Вот доказательство (, и вы действительно можете протестировать то же самое, добавив те же отладочные сообщения в свой реальный код, чтобы быть уверенным):

executeCommand(){
  echo "Starting $1"
  sleep 4
  echo "$1 Complete"
}

executeCommand 1 &
p1=$!
executeCommand 2 &
p2=$!
executeCommand 3 &
p3=$!
wait "$p1" "$p2" "$p3"
$ sh yourScript
Starting 1
Starting 2
Starting 3
1 Complete
2 Complete
3 Complete
$ 
2
20.03.2021, 17:13

Теги

Похожие вопросы