qhdx07
作者qhdx07·2022-04-27 10:42
系统架构师·as

Linux日志文件定时清理

字数 1076阅读 754评论 0赞 0

1.查找并删除文件命令:

find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;

实例命令:

find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} \;

说明:

将/opt/soft/log/目录下所有30天前带".log"的文件删除。具体参数说明如下:

find:linux的查找命令,用户查找指定条件的文件;

/opt/soft/log/:想要进行清理的任意目录;

-mtime:标准语句写法;

+30:查找30天前的文件,这里用数字代表天数;

".log":希望查找的数据类型,".jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举一反三;

-exec:固定写法;

rm -rf:强制删除文件,包括目录;

{} \; :固定写法,一对大括号+空格+\+;

2.设置计划任务:

crontab -e

将auto-del-30-days-ago-log.sh执行脚本加入到系统计划任务,到点自动执行

输入:

10 0 * /opt/soft/log/auto-del-7-days-ago-log.sh

这里的设置是每天凌晨0点10分执行auto-del-7-days-ago-log.sh文件进行数据清理任务了。

3.crontab定时任务简单设置方法

crontab -e (任何用户都可以编辑)

          • command

分 时 日 月 周 命令

第1列表示分钟1~59 每分钟用或者 /1表示

第2列表示小时1~23(0表示0点)每小时用或者/1表示

第3列表示日期1~31

第4列表示月份1~12

第5列标识号星期0~6(0表示星期天)

第6列要运行的命令

直接编辑 /etc/crontab (需用root执行,可以给其他用户添加定时任务)

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

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广