[devel] shell programming

Alexey Tourbin at на altlinux.ru
Пт Янв 21 10:18:29 UTC 2011


On Fri, Jan 21, 2011 at 01:01:56PM +0300, Денис Смирнов wrote:
> Задача -- выполнить некоторую функцию в shell-скрипте, и если вдруг эта
> функция выполняется больше 5-и секунд -- прибить ее нафиг и выполнить
> другую. Как это сделать?

func &
finished=

for 1 2 3 4 5; do
	sleep 1
	if ! kill -0 $!; then
		wait
		finished=1
	fi
done

if [ -z "$finished" ]; then
	echo >&2 killing func
	kill $!
	wait
fi


Подробная информация о списке рассылки Devel