Linux常用crontab

crontab定时器

格式

{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} 

  • minute: 区间为 0 – 59 
  • hour: 区间为0 – 23 
  • day-of-month: 区间为0 – 31 
  • month: 区间为1 – 12. 1 是1月. 12是12月. 
  • Day-of-week: 区间为0 – 7. 周日可以是0或7.

添加定时器

crontab -e : 修改crontab文件. 如果文件不存在会自动创建,在文件里添加。 
crontab -r : 删除crontab文件。
crontab -ir : 删除crontab文件前提醒用户。

星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。
逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”
中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”
正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。
同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

查看已有定时器

crontab -l    //查看用户的定时器(有的木马之所以删不完就是因为用了定时器定时下载)

查看执行记录

tail -n 2000 /var/log/cron|grep xxx.sh

删除n天前文件

删除/root/tomcat/logs/目录下,mtime指定的30天前的,名为*.log的文件。

find /root/tomcat/logs/  -type f -mtime +30 -name "*.log" -exec rm -rf {} ;

创建文件编辑脚本并赋予执行权限

touch autoDelLog.sh
vi autoDelLog.sh
chmod 777 autoDelLog.sh

加入crontab文件

crontab -e

编辑文件,加入凌晨00:00执行autoDelLog.sh的配置

0 0 * * * /root/autoDelLog.sh

查看

crontab -l

自动备份Mysql

mysqldump --opt  -uroot -p123456 -h127.0.0.1 --database dbname--ignore-table=gmzntc2018.table1 | gzip>/db_back/dbname_`date +%F`.zip
原文地址:https://www.cnblogs.com/aeolian/p/12986633.html