Я пытаюсь поместить приглашение в середине сценария оболочки, который запускает процессы Java, однако приглашение всегда выполняется первым из-за задержки в подключениях Java. Есть ли способ, которым я могу отложить приглашение не выполнять до тех пор, пока процессы Java не будут подключены и запущены?

#!/bin/bash

# Starting java processes in the background
java .... &
java .... &
java .... &

# Prompt user
echo -n "Would you like to run the script? (y/n) --> "
read answer
.
.
.

1 ответ1

0

В bash есть команда ожидания, которая позволяет вам ждать завершения процесса, но, поскольку вы ожидаете, что что-то произойдет, пока программа еще запущена, я предлагаю вам использовать sleep для ожидания заранее определенного количества времени:

# Sleep 5 seconds
sleep 5
# or...
sleep 5s

# Same for minutes (m), hours (h) and so on

Просто имейте в виду, что если Java-программы занимают больше времени, чем вы определили, это не сработает.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .