assuming your script goes into some sort of work loop you can check how long you've been running and exit if needed.
... my $stop_time = time + 60 * 60 * 7; # now + 7 hours while (1) { do_work; last if time > $stop_time; } ...
your script will stop the first chance it gets.
if you need immediate gratification the script will need to write a pidfile so you'll know which script to kill. (if there's only ever a single instance of your script running you can get away with the 'killall' solution.)
another alternative would be something like this...
... while (1) { do_work; if (-f '/tmp/script.die.die.die') { unlink '/tmp/script.die.die.die'; last; } ...
then you could have a crontab entry at 4p.m that just does a 'touch /tmp/script.die.die.die' and again your script would stop as soon as possible.
In reply to Re: Kill Script
by zengargoyle
in thread Kill a script at a certain time
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |