BASH убить Wget, если нет ответа - PullRequest
1 голос
/ 04 февраля 2011

У меня есть этот код

...<br> SERVERCONNECTION=$(wget --quiet -O - <a href="http://xx:yy@127.0.0.1:10001/server" rel="nofollow">http://xx:yy@127.0.0.1:10001/server</a> | grep connections | awk '{print $36}')

Иногда URL перестает отвечать на запросы, затем я хочу убить процесс wget и установить для переменной SERVERCONNECTIION значение 0.

Ответы [ 2 ]

5 голосов
/ 04 февраля 2011

Установите время ожидания для процесса wget с помощью --timeout=seconds, то есть

SERVERCONNECTION=$(wget --timeout=5 --quiet -O - http://xx:yy@127.0.0.1:10001/server | grep connections | awk '{print $36}')
3 голосов
/ 15 октября 2011

Еще одно бесполезное использование grep.

Используйте взамен awk '/connections/ {print $36}', чтобы вся строка читалась как

wget --timeout=5 --quiet -O - http://xx:yy@127.0.0.1:10001/server | awk '/connections/ {print $36}'
...