![无法使用 find 命令找到目录](https://linux22.com/image/553915/%E6%97%A0%E6%B3%95%E4%BD%BF%E7%94%A8%20find%20%E5%91%BD%E4%BB%A4%E6%89%BE%E5%88%B0%E7%9B%AE%E5%BD%95.png)
我尝试使用命令
sudo find / -type d -iname firefox
它给了我以下输出
/usr/share/doc/firefox
/usr/lib/firefox
/home/ashu/.mozilla/firefox
/etc/firefox
但是我有一个名为 firefox 的目录位于
在/usr/local/sbin/中
为什么这里没有列出?
答案1
最有可能的原因是/usr/local/sbin/in
(或早期组件之一)是指向另一个目录的符号链接。 find
默认情况下不遵循符号链接;使用-follow
或-L
来更改这一点,但请注意,它可能导致find
循环遍历目录树。
答案2
它是否只是命名的firefox
?名称中没有附加版本号?您在语句中没有使用通配符,因此找不到find
名为的目录。firefox-3
答案3
既然您提到 geeokosaur 是正确的,您可以使用这种形式来包含直接符号链接:
sudo find / \( -type d -o -xtype d \) -iname firefox
或者像 geekosaur 已经建议的那样,使用 find -L,因为它也处理(比如说) /usr/local/sbin 是符号链接的情况。