On 2013-05-15 17:44, Matt wrote:
I have a shell script that's run every 5 minutes I use to call many other shell scripts. Is there a way to wait a random number of seconds before executing each line? Something like this.
wait_random 10 - 180 (perl /scripts/my_script.pl) & wait_random 10 - 180 (perl /scripts/my_script5.pl) & wait_random 10 - 180 (perl /scripts/my_script7.pl) &
I have many entries in this file and I background them all because most must poll network devices which can take time. None should take over 2 minutes though.
When I run them all at once they bog the system and cause some of latency graphs on equipment being monitored to look poor.
Wait randomized interval of 60 seconds and start
perl -e "sleep(int(rand(60)))" && (perl /scripts/my_script.pl)