最近在學習nutch,想讓它每天自動去抓取我們學校的網站內容。cron正是解決這個問題的工具。
cron是linux下定時執行工具,可在完全無人工幹預的情況下作業。可以用一下命令來手動開啟或關閉該任務:
/sbin/service crond start 啟動服務
/sbin/service crond stop 關閉服務
/sbin/service crond restart 重新啟動服務
/sbin/service crond reload 重新載入服務
cron 配置計劃任務的書寫格式:
分鐘 小時 日 月 周 [使用者名稱] 命令
說明:
第一段應該定義的是:分鐘,表示每個小時的第幾分鐘來執行。範圍是從0-59
第二段應該定義的是:小時,表示從第幾個小時來執行,範圍是從0-23
第三段應該定義的是:日期,表示從每個月的第幾天執行,範圍從1-31
第四段應該定義的是:月,表示每年的第幾個月來執行,範圍從1-12
第五段應該定義的是:周,表示每周的第幾天執行,範圍從0-6,其中 0表示星期日。
每六段應該定義的是:使用者名稱,也就是執行程式要通過哪個使用者來執行,這個一般可以省略;
第七段應該定義的是:執行的命令和參數。
在系統中,/etc目錄下,有cron.daily,cron.hourly,cron.monthly,cron.weekly檔案目錄,我們只需要在相應目錄下添加寫好的shell檔案就可以自動定時執行。
如我希望nutch能在每天早晨9點0分開始自動抓取,可以這樣實現:
[root@localhost cron.daily]# touch autonutch.sh
[root@localhost cron.daily]# chmod 755 autonutch.sh /*改變autonutch.sh的存取權限*/
[root@localhost cron.daily]# echo "/home/sunny/nutch/bin/nutch crawl urls -dir crawl" > autonutch.sh
[root@localhost cron.daily]# more autonutch.sh
/home/sunny/nutch/bin/nutch crawl urls -dir crawl
- linux進程調度類比
- linux中的cron和linux at命令用法詳解
- Linux的自動執行程式cron和crontab