如何在 Linux 中查找最近 N 分钟内修改的文件?

举报
wljslmz 发表于 2022/10/31 16:37:39 2022/10/31
【摘要】 在对代码或服务器进行故障排除时,查找最近修改的文件是我们经常要用的命令。修改了哪些日志文件?当我运行这个命令时,哪些文件发生了变化?多功能的find 命令可以实现这些功能。下面的命令将在当前目录中查找最近五分钟内修改过的所有文件。find . -type f -mmin -5具体应该怎么用,下面我将详细介绍。 在 Linux 中查找修改过的文件使用 find 命令查找在最后 n 分钟被修改的...

在对代码或服务器进行故障排除时,查找最近修改的文件是我们经常要用的命令。修改了哪些日志文件?当我运行这个命令时,哪些文件发生了变化?多功能的find 命令可以实现这些功能。

下面的命令将在当前目录中查找最近五分钟内修改过的所有文件。

find . -type f -mmin -5

具体应该怎么用,下面我将详细介绍。

在 Linux 中查找修改过的文件

使用 find 命令查找在最后 n 分钟被修改的文件的语法:

find [path] -type f -mmin n

n 表示要检查的分钟数,但也有一些其他选择,例如:

  • -n 将检查在少于 n 分钟内修改的文件
  • +n 将检查超过 n 分钟修改的文件
  • n 将检查恰好在 n 分钟前修改的文件

同样,也可以使用-mtime而不是-mmin检查几天前修改的文件。

查找最近 5 分钟内修改的文件

所以假设我想在 var 目录中列出最近 5 分钟内刚刚修改过的文件,我的命令如下:

find .var/ -type f -mmin -5

追加-ls可以展示更多信息,例如文件所有者、权限和修改时间。

find .var/ -type f -mmin -5 -ls

💡find 命令允许对其结果进行一些操作,-ls就是之一。

查找最近 n 天内修改的文件

要查找过去 n 天而不是 n 分钟内修改过的文件,只需使用-mtime而不是-mmin.

假设我想查找最近一天修改过的文件,我的命令是:

find /media/sagar/HDD/Downloads -type f -mtime -1 -ls

查找超过 X 天的文件

可以使用该mtime参数查找最近未修改的旧文件。

假设在当前目录中查找超过 30 天的文件,使用这个命令:

find . -mtime +30

查找最近 n 分钟或几天内修改过的目录

find 命令还可以带来修改后的目录列表。

只需将 -type f 更改为 -type d,这将让您搜索目录而不是文件。

为了演示,我将展示如何获取 /.cache/mozilla/firefox 下的修改目录列表:

find .cache/mozilla/firefox/ -type d -mmin -5 -ls

同样,您可以找到几天前工作的目录。

find Downloads/ -type d -mtime -1 -ls

查找最近访问或创建的文件

那么如何查找最近 n 分钟访问或创建的文件呢?

要查找在过去 n 分钟内访问过的文件,您必须使用-amin而不是-mmin.

要在我的首选目录中查找过去 5 分钟内访问的文件,我将使用给定的命令:

find /media/sagar/HDD/Downloads -type f -amin -5 -ls

同理,你也可以通过使用-cmin而不是找到最近n分钟内创建的文件-amin。

find /media/sagar/HDD/Downloads -type f -cmin -5 -ls

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。