如何在linux中找到最后一天更新的目录?

vam*_*hna 6 linux directory last

我有一个问题,比如我需要找到昨天更新的目录。我尝试使用find命令,但它列出了目录中更新的所有文件。但我只需要目录名称。

tho*_*d_j 7

要查找包含过去 24 小时内修改过的文件的目录:

find [dir-to-search] -type f -mtime -1 -exec dirname {} \; | sort --unique
Run Code Online (Sandbox Code Playgroud)

更改mtime -1到mtime -2搜索过去48小时,或将其更改为mmin -120搜索2小时以来

编辑:解释:

以dir-to-search递归方式搜索(或当前目录,如果未提供),搜索f不到(1*24)小时前修改过的(文件)类型的条目。dirname为每一个执行命令。这将为每个文件提供一个目录名列表,这可能会导致许多重复,因此将输出通过管道传输到sort并要求它提取唯一的目录名。


小智 6

您可以在查找字符串中使用 -type d:

find /path/to/target -type d -mtime 1
Run Code Online (Sandbox Code Playgroud)

  • 该命令只会找到添加、删除或重命名内容的目录,而不是修改了现有文件的目录。还要小心 `find` 对诸如 mtime 和 size 之类的事情的处理 - 它不是特别直观。`find -mtime 1` 实际上查找在 24.0 到 47.999 小时前修改过的文件。相反,`find -size 2G` 会查找 1.0 到 1.999 GiB 之间的文件。我最喜欢的是`find -size -1G`,它只查找零字节文件。但我离题了... (4认同)