📜  如何在 Linux 中查找最近 N 天修改过的文件?

📅  最后修改于: 2021-10-28 02:39:34             🧑  作者: Mango

有时,我们想找到我们在过去 N 天内创建或修改的文件。在这种情况下,根据日期对文件进行排序会有所帮助,但这是执行任务的传统方式,效率不高。这篇文章是关于使用find命令搜索此类文件的。

方法一:使用 find 命令的 -mtime(modification time) 属性

它是一个修改后的时间戳,它告诉我们文件最后一次被程序或用户修改的时间,并且当文件的内容被更改或修改时,mtime 也会更改。我们可以在一定范围内看到文件的时间戳

  • 列出时间戳已更改超过 n 天的文件– mtime +n
  • 列出时间戳小于 n 天前更改的文件– mtime – n
  • 列出时间戳恰好在 n 天前更改的文件– mtime n

句法 :-

find directory -iname "*.txt " -mtime  -n -print

在哪里:

  • directory 是要在其中搜索文件的目录名称
  • -iname 是文件名,也可以是正则表达式。
  • -mtime 是指定天数

例子:

find /home/priyanshu -iname "*.txt " -mtime  -2 -print

Linux 查找最近 N 天修改过的文件

方法 2:使用 find 命令的 atime(文件访问)属性。

它是一个访问时间戳,它告诉我们上次读取或访问文件的时间,这意味着使用应用程序打开文件并读取其内容。

  • 列出时间戳小于 n 天前更改的文件 atime – n
  • 列出时间戳刚好在 n 天前更改的文件 atime n

句法:-

find directory -iname "*.txt " -atime  - n -type f

在哪里:

  • directory 是要在其中搜索文件的目录名称
  • -iname 是文件名,也可以是正则表达式。
  • -atime 是指定天数。

例子:

find /home/priyanshu -iname "*.txt " -atime  -1 -type f

Linux 查找最近 N 天修改过的文件

方法 3: daystart 选项

它测量从当天开始而不是 24 小时前开始的时间。

句法:-

列出在 n1-n2 天前为 pdf 文件编辑的文件。

find directory -mtime n1 -mtime -n2 -daystart -iname "*.pdf "

Linux 查找最近 N 天修改过的文件

方法 4:-newer 选项

它比较两个目录中的文件并显示较新的文件

句法:-

find directory -newer directory

Linux 查找最近 N 天修改过的文件