赞
踩
crontab是linux系统下自带的定时任务工具,用户可以使用crontab工具来定制自己的计划任务,crontab文件路径一般在 /etc/crontab。 如果没有请自行下载安装:
apt-get install cron
以下需要注意的是:如果你是在ubuntu下,命令就是cron,如果在centos或其他系统下,需要将命令中的cron改为crond。
#查看运行状态
systemctl status cron (或 service cron status)
#重启
systemctl restart cron (或 service cron restart)
#启动
systemctl start cron (或 service cron start)
#停止
systemctl stop cron (或 service cron stop)
#1、创建定时任务示例文件夹 mkdir demo #2、创建定时任务示例日志文件 mkdir demo/demolog #3、编辑示例脚本 vi demo.sh #4、写入demo.sh脚本示例内容 意思为找到/demo/demolog下的十天前的并且扩展名为.txt文件进行删除 find /demo/demolog -mtime +10 -name "*.txt" -exec rm -rf {} \; 脚本内容说明: find:linux的查找命令,用户查找指定条件的文件 /demo/demolog:想要进行清理的任意目录 -mtime:标准语句写法(如果想删除全部-mtime +10可删除) +10:查找10天前的文件,这里用数字代表天数,+30表示查找30天前的文件 “*.*”:希望查找的数据类型,”*.txt”表示查找扩展名为txt的所有文件,”*”表示查找所有文件,这个可以灵活运用 -exec:固定写法 rm -rf:强制删除文件,包括目录 {} \; :固定写法,一对大括号+空格+\+;
写完之后wq保存,使用 chmod +x demo.sh
赋予可执行权限。
在root用户下,可以直接 vi /etc/crontab
文件进行添加任务脚本,而在其他普通用户下可以通过crontab –e 进行脚本的添加,效果都是一样的
crontab文件中内容不做说明,在这里引用一个其他大佬的文章,需要的请移步:https://www.cnblogs.com/kunpengit/p/4045343.html
直接在crontab的末尾加入一行执行语句就可以了
#解释:cron表达式 + 指定执行脚本的用户 + 执行脚本
0 1 * * * root sh /demo/demo.sh
考虑到定时任务可以有多个,所有将任务写成脚本形式,也可以省略创建执行脚本,直接在crontab后面添加:
0 1 * * * root find /demo/demolog -mtime +10 -name "*.txt" -exec rm -rf {} \;
添加完后保存文件,使用 service corn restart
重启服务即可
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。