#!/bin/bash while : ;do /home/somedir/scripts.sh 2>/dev/null & sleep 3 done注意:第一次運行時請不要使用bash kick.sh & 這種後台運行的方式,它會僵死的。 可以把它放到計劃任務使其運行,然後將計劃任務中的此條目刪除即可。最後把這個腳本放到/etc/rc.local讓它每次開機都可以被運行。 第二種方法: 和第一種方法類似,只不過感覺比第一種更便捷一些。 cat cron-seconds.sh
#!/bin/bash #For excuting the scripts every 3 seconds in crond. #20100124.WXG for((i=1;i<=20;i++));do /home/somedir/scripts.sh 2>/dev/null & sleep 3 done然後寫入的crontab裡每分鐘執行一次,如下 crontab -e * * * * * /bin/bash /home/somedir/cron-seconds.sh 第三種方法: 那麼如何使用計劃任務來直接實現呢? 最後解決方案如下,經驗證,腳本運行非常穩定。(腳本作者:findingcc) crontab -e
## For excuting scripts.sh every 3 seconds##on 2010-01-22 * * * * * /home/somedir/scripts.sh * * * * * sleep 3 && /home/somedir/scripts.sh * * * * * sleep 6 && /home/somedir/scripts.sh * * * * * sleep 9 && /home/somedir/scripts.sh * * * * * sleep 12 && /home/somedir/scripts.sh * * * * * sleep 15 && /home/somedir/scripts.sh * * * * * sleep 18 && /home/somedir/scripts.sh * * * * * sleep 21 && /home/somedir/scripts.sh * * * * * sleep 24 && /home/somedir/scripts.sh * * * * * sleep 27 && /home/somedir/scripts.sh * * * * * sleep 30 && /home/somedir/scripts.sh * * * * * sleep 33 && /home/somedir/scripts.sh * * * * * sleep 36 && /home/somedir/scripts.sh * * * * * sleep 39 && /home/somedir/scripts.sh * * * * * sleep 42 && /home/somedir/scripts.sh * * * * * sleep 45 && /home/somedir/scripts.sh * * * * * sleep 48 && /home/somedir/scripts.sh * * * * * sleep 51 && /home/somedir/scripts.sh * * * * * sleep 54 && /home/somedir/scripts.sh * * * * * sleep 57 && /home/somedir/scripts.sh
這裡的 sleep 57 && /home/somedir/scripts.sh 是個完整的命令,假如我們要清空/home/91ri.org/log/ 下方的文件 我們可以這樣: * * * * * sleep 3 && rm /home/91ri.org/log/* * * * * * sleep 6 && rm /home/91ri.org/log/* * * * * * sleep 9 && rm /home/91ri.org/log/* 以此類推 那麼我還是比較傾向於使用第三種方法的,雖然比較麻煩一點。因為第一種方法和第二種方法並不是嚴格的間隔3秒執行的,會大於3秒,因為執行腳本scripts.sh也是需要一定時間的,即使已經加了&符號放到了後台執行也會存在一定的誤差。如果對於精確度要求不高,推薦使用第二種方法。 [附錄] 網絡上還有這麼一種寫法: *:10 * * * * rm /home/91ri.org/log/* 意為:每10秒執行一次rm /home/91ri.org/log/* 但不知是否是小編個人的問題還是這個命令本身是錯誤的,經過在centos下測試後,這個是不可以的。那麼有興趣的同學可以自行測試。 cron的相關使用文章參考《利用cron做linux rsync+ssh 鏡像備份》 from:www.91ri.org