这是一个错误吗,当我find ./path/here/
得到:
./path/here//foo
./path/here//bar
我知道find
希望我指定不带尾部斜杠的路径,但它肯定可以检测制表符完成留给我的路径并相应地调整其输出。有什么理由不这样做吗?
答案1
答案2
根据记录,人们可能使用find some/dir/
而不是的原因之一find some/dir
是,何时some/dir
实际上是一个目录的符号链接,并且您确实希望find
在该符号链接指向的目录中查找文件。
但是,在这种情况下,有更好的选择:
find -H some/dir
-H
是一些 POSIX 实用程序(ls
、cp
、chmod
...)支持的选项,它告诉实用程序遵循作为参数传递的符号链接(只是那些,不要与-L
/混淆-follow
,这会导致find
遵循每一个符号链接,作为参数传递的符号链接,以及在目录遍历期间找到的符号链接)。
这在功能上仍然不等同于实际上不是目录的find some/dir/
情况。some/dir
在这种情况下,find some/dir/
将会失败不是目录错误同时find -H some/dir
会列出该非目录文件。