Сценарий оболочки: мониторинг запуска задачи - PullRequest
0 голосов
/ 20 октября 2010

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

Я придумал что-то вроде:

while ! pgrep "process_to_match"
do
  sleep 10
done;

# the rest of the script

Проблема с этим сценарием заключается в том, что если "process_to_match" запущен менее чем за 10 мс, "остальная часть сценария" не будет выполнена.

Еще лучшим решением для меня было бы инициирование выполнения скрипта при запуске process_to_match.

Есть идеи? Благодаря.

Ответы [ 2 ]

2 голосов
/ 20 октября 2010

Вы можете проверить другим способом, что процесс был выполнен?Я имею в виду, этот процесс регистрирует или изменяет что-нибудь?

Если нет, вы можете заменить процесс сценарием оболочки (переименовать процесс и создать оболочку с именем файла процесса), который будет что-то регистрировать после запуска процессавы ждете.

0 голосов
/ 20 октября 2010

Какова ваша реальная потребность?

Если вам известен PID процесса, который вы отслеживаете, вам просто нужно подождать:

wait $pid

Получить этот PID так же просто, как:

process_to_match & pid=$!
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...