1.删除⽂件命令:
find 对应⽬录 -mtime +天数 -name \"⽂件名\" -exec rm -rf {} \\;
实例命令:
find /data/log/ -mtime +30 -name \"*.log\" -exec rm -rf {} \\;
备注:
将/data/log/⽬录下所有30天前带\".log\"的⽂件删除。具体参数说明如下:find:linux的查找命令,⽤户查找指定条件的⽂件;/data/log/:想要进⾏清理的任意⽬录;-mtime:标准语句写法;
+30:查找30天前的⽂件,这⾥⽤数字代表天数;
\"*.log\":希望查找的数据类型,\"*.jpg\"表⽰查找扩展名为jpg的所有⽂件,\"*\"表⽰查找所有⽂件,这个可以灵活运⽤,举⼀反三;-exec:固定写法;
rm -rf:强制删除⽂件,包括⽬录;
{} \\; :固定写法,⼀对⼤括号+空格+\\+;
2.计划任务:
新建⼀个可执⾏⽂件auto-del-30-days-ago-log.sh,并分配可运⾏权限touch /data/auto-del-30-days-ago-log.shchmod +x auto-del-30-days-ago-log.sh
2.1编辑shell脚本:
vi auto-del-30-days-ago-log.sh#!/bin/sh
find /data/log/ -mtime +30 -name \"*.log\" -exec rm -rf {} \\;保存退出(:wq)。
2.2计划任务:#crontab -e
设置是每天凌晨0点10分执⾏auto-del-7-days-ago-log.sh⽂件进⾏数据清理任务了。10 0 * * * /data/auto-del-7-days-ago-log.sh >/dev/null 2>&1
因篇幅问题不能全部显示,请点此查看更多更全内容