Linux find 总是返回 1 条记录

Linux find 总是返回 1 条记录

为什么 Linux CentOS 中的命令find -cmin +20总是返回 1 条记录.?我该如何解决这个问题?

答案1

当你没有输入要find查看的特定路径时,至少 GNU find 将默认从当前目录(包括当前目录)进行递归搜索,即.。逐字来自man find

If no paths are given, the current directory is used.

如果你不想在结果中包含路径参数本身,请添加-mindepth 1。再次从man find

-mindepth levels
   Do not apply any tests or actions at levels less than `levels` (a
   non-negative integer). `-mindepth 1` means process all files except
   the command line arguments.

例子:

~$ mkdir test
~$ cd test
~/test$ find
.
~/test$ find -mindepth 0
.
~/test$ find -mindepth 1
~/test$ 

使用您的特定命令,find将始终返回至少一条记录如果当前目录本身已超过 20 分钟。像您那样创建新目录将不会返回任何内容,因为它不符合搜索条件 — 至少在创建后的 20 分钟内不符合。

相关内容