[ILUG] Terminate process after a set time limit
Pádraig Brady
P at draigBrady.com
Thu Nov 2 14:41:36 GMT 2006
Kieran Tully wrote:
> Is there a standard way to impose a time limit on a child process, and
> terminate it when the limit is reached?
>
> I have a BASH script which ssh'es into multiple systems.
> One unreliable remote system sometimes causes ssh to block for hours.
> If ssh has been running for more than 15 minutes, I'd like to kill it
> and move on to the next system.
>
> Googling reveals rlimit and ulimt -t, but that only limits CPU time
> consumed, whereas I want a hard limit on real world time. The only ssh
> options I can find apply to connect()time, and I don't believe that's
> the problem here.
I guess you could do it with trap?
#!/bin/sh
trap exit 17
sleep 900&
potentially_long_command
Pádraig.
More information about the ILUG
mailing list