задача такая - на баше нужно ограничить время выопления скрипта. после истечения которого ему будет посылаться киллом какой-нибудь сигнал завершения, как можно это реализовать?
есть идея как-то перехватывать его пид и ставить на паузу контроллирующий скрипт, после чего килять, но чем перехватить не знаю
>есть идея как-то перехватывать его пид и ставить на паузу контроллирующий скрипт,
>после чего килятьДа.
$ cat <<TMR >tmr
#!/bin/sh( sleep 5; kill $$ ) &
echo $$
ps -Hfor((i=0; i<10; i++)) do
echo "$i..."
sleep 1
done
TMR
$ chmod +x tmr
$ ./tmr
3302
PID TTY TIME CMD
15186 pts/13 00:00:04 bash
3302 pts/13 00:00:00 tmr
3303 pts/13 00:00:00 tmr
3304 pts/13 00:00:00 sleep
3305 pts/13 00:00:00 ps
0...
1...
2...
3...
4...
Завершено
$ _
ок, спасибо!
ошибся, это не то что нужно...
надо чтобы это можно было уместить в одну строку - чтоб заупускать по крону
>ошибся, это не то что нужно...
>надо чтобы это можно было уместить в одну строку - чтоб заупускать
>по кронуРазмести это в скрипте и вызывай его из крона.
>ошибся, это не то что нужно...
>надо чтобы это можно было уместить в одну строку - чтоб заупускать
>по кронубудет очень много скриптов, я уже думал об этом
хочу упростить
script& sleep 5; kill $!
>script& sleep 5; kill $!большое спасибо
В coreutils присутствует timeout(1). А ещё есть timelimit (http://devel.ringlet.net/sysutils/timelimit/).
>В coreutils присутствует timeout(1). А ещё есть timelimit (http://devel.ringlet.net/sysutils/timelimit/).а еще есть hatools, а в них -- halockrun и hatimerun