walker的需求是每天1點鐘的時候,執行一個shell腳本,下面記錄walker用到的基本功能。
1、安裝
<code>yum </code><code>install</code> <code>crontabs</code>
2、服務相關
<code>/sbin/service</code> <code>crond status </code><code>#檢視任務狀态</code>
<code>/sbin/service</code> <code>crond start </code><code>#啟動服務</code>
<code>/sbin/service</code> <code>crond stop </code><code>#關閉服務</code>
<code>/sbin/service</code> <code>crond restart </code><code>#重新開機服務</code>
<code>/sbin/service</code> <code>crond reload </code><code>#重新載入配置</code>
3、檢視計劃任務。基本指令行參數建議使用crontab --help檢視,man crontab太繁瑣。
<code>crontab</code> <code>-l </code><code>#檢視目前使用者計劃任務</code>
<code>crontab</code> <code>-u username -l </code><code>#檢視userx使用者的計劃任務</code>
4、檢視任務執行日志。
<code>tail</code> <code>-f </code><code>/var/log/cron</code>
5、/etc/crontab檔案裡面存放系統計劃任務,/var/spool/cron/目錄裡面按使用者存放計劃任務。
6、編輯/etc/crontab配置計劃任務。
<code>SHELL=</code><code>/bin/bash</code>
<code>PATH=</code><code>/sbin</code><code>:</code><code>/bin</code><code>:</code><code>/usr/sbin</code><code>:</code><code>/usr/bin</code>
<code>MAILTO=root</code>
<code>HOME=/</code>
<code># For details see man 4 crontabs</code>
<code># Example of job definition:</code>
<code># .---------------- minute (0 - 59)</code>
<code># | .------------- hour (0 - 23)</code>
<code># | | .---------- day of month (1 - 31)</code>
<code># | | | .------- month (1 - 12) OR jan,feb,mar,apr ...</code>
<code># | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat</code>
<code># | | | | |</code>
<code># * * * * * [user-name] command to be executed</code>
<code> </code><code>0 1 * * * root </code><code>/home/walker/test</code><code>.sh</code>
/var/spool/cron/目錄裡面的計劃任務檔案内容格式與上面雷同。差別是,/var/spool/cron/必須指定使用者;/etc/crontab是系統計劃任務,可以不指定使用者。
<code>source</code> <code>/etc/profile</code>
這時如果還是手動執行腳本OK,但是crontab死活不執行。可以嘗試在crontab中直接引入環境變量解決問題。如:
<code>0 * * * * . /etc/profile;/bin/sh /home/walker/test.sh</code>
*** walker ***
本文轉自walker snapshot部落格51CTO部落格,原文連結http://blog.51cto.com/walkerqt/1690113如需轉載請自行聯系原作者
RQSLT