如果你有一个job, 需要每隔5秒运行一次.
* * * * * sleep 5; /bin/cmd
上面这个脚本是错误的,会导致在每分钟的第0秒开始, sleep 5秒以后, 再运行/bin/cmd, 然尔运行完就结束了, 不会每隔5秒运行一次.
正确的写法
* * * * * for i in {1..12}; do /bin/cmd; sleep 5; done
* * * * * REMAIN=60 INC=5 ; while ; do /bin/cmd; sleep $INC; REMAIN=$(($REMAIN - $INC)); done
* * * * * /bin/cmd * * * * * sleep 5; /bin/cmd * * * * * sleep 10; /bin/cmd * * * * * sleep 15; /bin/cmd ...... * * * * * sleep 55; /bin/cmd
访客评论