一、創建shell文件
由於個人原因,偏向於先將定時執行的任務全部寫到一個shell文件,然後在定時任務時,只需要執行該shell文件即可。
以下爲shell文件示例,定時清理tomcat下的catlina.out文件
#!bin/sh
echo "開始清除catalina.out"
cat /dev/null > /mnt/tomcat7/logs/catalina.out
echo "成功清除catalina.out"
注意事項:
在編寫shell文件的時候一定要注意,千萬不要在pc上用記事本寫保存成.sh文件,這樣的shell文件在執行的時候將會出現不可預知情況。最好是copy一個能夠成功運行的sh文件,如tomcat7/bin/startup.sh 將 #!bin/sh 以下部分全部刪除,添加自己的內容
將shell文件copy到linux服務器,我存放的位置是 /home/auto_job
二、確定是否安裝 crond服務
確認方法 service crond status
如果提示信息是:
crond: unrecognized service
則表示未安裝,則需要按以下步驟安裝,否則跳過該步驟
安裝方法:
yum install vixie-cron
yum install crontabs
在彈出的對話框中選擇 Y 即可
三、啓動 crond 服務
crond 常用服務如下:
service crond start # 啓動服務
service crond stop # 停止服務
service crond restart # 重啓服務
service crond reload # 重新加載配置
四、配置crond配置文件 crontab 位置 /etc/crontab
我的配置如下:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
# 清除catlina.out 每天早上定時執行
00 5 * * * root /home/auto_job/clear_catalina.sh
注意,除最後二行是我添加之外,其它均爲自動生成
關於該配置文件的寫法,網上有多種,上面只列舉了一種,將在每天的5點,執行 /home/auto_job/clear_catalina.sh 文件
注意事項:
在編寫 crontab 一定要注意文件未尾後的空格,切記,文件未尾一定不能有空格