SHELL中find -mtime -atime -ctime

本文介绍了如何结合crontab定时任务和find命令来定期清理服务日志。具体讲解了find命令中-atime、-mtime和-ctime的区别,并详细阐述了-mtime参数的三种用法,包括列出最近n天内、n天前以及n天之外修改过的文件。通过示例展示了如何配置crontab来执行删除操作,帮助用户实现自动化日志管理。
摘要由CSDN通过智能技术生成

如果想要定期删除服务产生的日志,比如自动打包3天前的日志,启动删除7天前的日志等。可以使用crontab+find的组合命令。
find命令就需要判定文件的时间,有三种-atime,-ctime和-mtime。

先看下三者的区别:
-atime:最后一次读的时间戳;
-mtime:最后一次修改内容的时间戳;
-ctime:最后一次修改文件属性的时间戳,比如文件的owner和group;当然修改内容也会修改ctime。

用-mtime来看看具体的用法

-mtime后面跟一个整数,表示几天前修改过。也有三种:
-mtime n
-mtime -n
-mtime +n

1、-mtime n : n为数字,意思为在n天之前的“一天之内”被更改过内容的文件
2、-mtime +n : 列出在n天之前(不含n天本身)被更改过内容的文件名
3、-mtime -n : 列出在n天之内(含n天本身)被更改过内容的文件名

举例:

将当前目录下24小时内更改过内容的文件列出

find ./ -mtime 0

将当前目录下5天之内被更改过内容的文件列出

find ./ -mtime -5

将当前目录下5天前的那一天被更改过内容的文件列出

find ./ -mtime +5

-exec:-exec选项后边跟着一个所要执行的命令,表示将find出来的文件或目录执行该命令。
exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个,最后是一个分号.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值