crontab 的使用方法



crontab设置

ubuntu16.04server 自带crontab

执行crontab -e 选择编辑器后在文本最后添加上以下

10 00 * * * /home/ubuntu/cron_cmd.sh > /home/ubuntu/cron_log 2>&1

我这里执行了一个脚本文件,里面可以放很多命令,log输出到指定文件夹。

至于什么是2>&1可以参考 这里



来创建一个cron_cmd.sh

source/home/ubuntu/py35env/bin/activate  加载虚拟环境

cd/home/ubuntu/myproject

pythonmanage.py djcmd                             django command

mysqldump-uroot -pApasswd myproject > /home/ubuntu/dbbackup/`date+%y%m%d`.sql  再来一个mysqldump

find/home/ubuntu/dbbackup/ f -mtime +7 -exec rm {}\; 设置删除7天之前的文件


下面是cron的参数说明

#m h  dom mon dow  command

m分钟 0-59

h小时 0-23

dow1-31

mon1-12

dow 星期 1-6 0表示星期天

command就是要执行的命令

除了这些固定值外,还可以配合星号(*),逗号(,),和斜线(/)来表示一些其他的含义:
 

 
星号         表示任意值,比如在小时部分填写*代表任意小时(每小时)
 
逗号         可以允许在一个部分中填写多个值,比如在分钟部分填写1,3表示一分钟或三分钟
 
斜线         一般配合 *使用,代表每隔多长时间,比如在小时部分填写*/2代表每隔两分钟。所以 */1*没有区别
 

1.* * * * *      date >> /home/postgres/time.log           # 每隔一分钟执行一次任务 
2.0 * * * *      date >> /home/postgres/time.log         #
每小时的0点执行一次任务,比如6:0010:00 
3. 6,10 * 2 * *    date >>/home/postgres/time.log      #
每个月2号,每小时的6分和10分执行一次任务 
4.*/3,*/5 * * * *  date >> /home/postgres/time.log       #
每隔3分钟或5分钟执行一次任务,比如10:0310:0510:06

 

3* * * * /home/meng/hello.sh就是:每小时的03分执行/home/meng/下的hello.sh脚本*/59-17 * * mon,tue,wed,thur,fri wall "Are we there yet?"
 
53 * * * /usr/bin/apt-get update
就是每天的03:05执行“/usr/bin/apt-getupdate
 
*/5 9-17 * * mon,tue,wed,thur,fri wall "Arewe there yet?"
就是在所有的工作日的(9-17)每过5分钟出现"Arewe there Yet?"
 
#
每晚的21:30重启apache
3021 * * * /usr/local/etc/rc.d/lighttpd restart

#每月11022
454 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart

#每天早上610
106 * * * date

#每两个小时
0*/2 * * * date

#晚上11点到早上8点之间每两个小时,早上8
023-7/2
8* * * date

#每个月的4号和每个礼拜的礼拜一到礼拜三的早上11
011 4 * mon-wed date

#1月份日早上4
04 1 jan * date


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值