Как убить дочерний процесс по истечении заданного времени ожидания в Bash?

У меня есть сценарий bash, который запускает дочерний процесс, который время от времени дает сбой (на самом деле, зависает) и без видимой причины (закрытый исходный код, поэтому я мало что могу сделать об этом). В результате я хотел бы иметь возможность запускать этот процесс в течение заданного времени и прекращать его, если он не завершился успешно через заданный промежуток времени.

Есть ли простой и надежный способ добиться этого с помощью bash?

PS: скажите, подходит ли этот вопрос больше для serverfault или суперпользователя.

161
задан codeforester 20 October 2017 в 17:27
поделиться