sh 'sleep' and trap?

看板FB_questions作者時間11年前 (2014/07/16 18:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
Hi All, I have a script, similar to this: " #!/bin/sh echo $$ >/var/run/mypid.pid trap "rm /var/run/mypid.pid; exit 0" EXIT while [ 1 ] do do_stuff sleep 60 done " This works - but an attempt to 'kill' it, e.g. kill `head -1 /var/run/mypid.pid` Takes up to 60 seconds, before 'sleep' completes, control returns back to the shell - which see's the signal, and quits. Is there a better way of doing this? - i.e. some way the shell can 'pass time' but still receive signals in a timely manner? The only work around I could come up with was to change the 'sleep 60' into a loop that does 60 * 1 second sleeps, not ideal though :( Cheers, -Karl _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscribe@freebsd.org"
文章代碼(AID): #1JnarV-q (FB_questions)
文章代碼(AID): #1JnarV-q (FB_questions)