[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: скрипты bash/sh kill, trap



В сообщении от Суббота 08 Октябрь 2005 12:29 Dmitry E. Oboukhov написал(a):

> есть скрипт А не мной писаный, который написан на perl, который
> коннектится к определенному хосту и что-то там делает
> пока у этого скрипта есть сязь он работает в цикле в своем,
> внутреннем... если связи нет, то он просто заканчивает работу...

[skip]

> думал я как в срипт-обертку прикрутить trap чтобы отловить -SIGTERM и
> кильнуть дочерний скрипт, но что-то ничего не придумалось :(

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

Сигналы в bash можно перехватывать встроенной командой trap:
trap "команда" SIGTERM

> $! ведь только для асинхронно запущенных команд работает
> а какой PID имеет команда, запущенная обычно - хез

Можно запустить дочерний процесс через &, и ждать его завершения встроенной 
командой wait.

A $* &
apid=$!
trap "kill $apid" SIGTERM
wait $apid

-- 
Best regards, Alexander Lourier. http://aml.rulezz.ru

Reply to: