OS X:BSD `find /etc` 仅打印 `/etc`

OS X:BSD `find /etc` 仅打印 `/etc`

find以明显的方式调用时无法列出目录的内容/etc,我不确定解释是什么。

find /etc只是显示/etc,即使目录中还有其他文件。

$ find /etc
/etc

$ find /./etc
/./etc

并作为根

$ sudo find /etc
/etc

/etc但是,当我运行时,我可以看到里面的一些文件find /etc/.

$ find /etc/. | head
find: /etc/./cups/certs: Permission denied
/etc/.
/etc/./afpovertcp.cfg
/etc/./afpovertcp.cfg~orig
/etc/./aliases

其他命令如ls显示内容/etc...

$ ls -1 /etc | head
afpovertcp.cfg
afpovertcp.cfg~orig
aliases
aliases.db

这是预期的行为吗find

答案1

在 OSX 上,/etc是一个符号链接,find不会像目录一样遍历它。

就其价值而言,/tmp还有/var符号链接(在每种情况下都指向 的子目录/private)。

你可以使用(参见POSIXfind)-H-L选项来获得类似于您的意图的东西。

相关内容