美文网首页
Shell 查找指定时间内的文件或文件夹

Shell 查找指定时间内的文件或文件夹

作者: 嗚嗚雲 | 来源:发表于2020-11-12 11:39 被阅读0次

我们在使用linux时,经常会用到清理日志,那么就会用到查找日志的功能,下面我们通过几个例子来学习一下:

find命令
  • 查询文件夹的最近一次访问是在180分钟之前的访问,找到后删除
find /data/logs/* -amin +180 -type d | xargs rm -rf
  • 首先可查询权限分为:
    a(访问/读取)
    c(权限修改)
    m(内容修改)

  • 其次查询时间可分为
    time(天)
    min(分钟)

举例
  • 例如:按天来计算
  1. -mtime : 指定时间曾被改动过的文件,意思是文件內容被更改过
-mtime n // 对文件数据的最近一次修改是在 n*24 小时之前。
  1. -ctime : 指定时间曾被更改过的文件,意思是文件权限被更改过
-ctime n  // 对文件状态的最近一次修改是在 n*24 小时之前。
  1. -atime : 指定时间曾被存取过的文件,意思是文件被读取过
-atime n // 对文件的最近一次访问是在 n*24 小时之前。
  • 例如 按分钟来计算
  1. -mmin : 指定时间曾被改动过的文件,意思是文件內容被更改过
-mmin n // 对文件数据的最近一次修改是在 n 分钟之前。
  1. -cmin : 指定时间曾被更改过的文件,意思是文件权限被更改过
-cmin n // 对文件状态的最近一次修改是在 n 分钟之前。
  1. -amin : 指定时间曾被存取过的文件,意思是文件被读取过
-amin n // 对文件的最近一次访问是在 n 分钟之前。
定时执行
  • 将其添加到crontab中,每30分钟执行一次
echo "*/30 * * * *  root find /data/logs/* -amin +180 -type d | xargs rm -rf" >> /etc/crontab

相关文章

网友评论

      本文标题:Shell 查找指定时间内的文件或文件夹

      本文链接:https://www.haomeiwen.com/subject/vznubktx.html