Answers:
mdfind
似乎忽略了很多隐藏文件。mdfind 'kMDItemFSInvisible==1&&kMDItemFSName==filename'
会列出.DS_Store
文件,但不会列出.bash_history
。我尚未找到任何方法来搜索某些隐藏目录(例如)中的文件/private/etc/
。
无论如何,“ 查找任何文件”比“ 查找文件”快得多find
。
“查找任何文件”是Mac OS X的程序,可让您搜索磁盘上的文件。
- 与Spotlight相反,它不使用数据库,而是使用文件系统驱动程序的快速搜索操作(如果有)。这使您可以搜索文件属性,例如名称,日期,大小等,但不搜索文件内容(为此使用Spotlight或EasyFind)。
- “查找任何文件”可以找到Spotlight无法找到的文件,例如,捆绑包和软件包内的文件以及通常被Spotlight搜索排除的文件夹内的文件。
- 最后,它非常快。在内部硬盘或SSD上搜索只需几秒钟。自己尝试!
假设“隐藏文件”是指名称以点开头的文件,或者位于名称以点开头的目录下某处的文件,而不是其他形式的不可见文件,则以下命令将显示所有隐藏文件的名称。它遍历系统上所有位置的所有文件名时很慢。
sudo find / -name '.*' \( -type d -exec find {} \; -prune -o -print \)
说明:
-type d -exec find {} \; -prune
执行find
对每一个(他的名字相匹配的目录.*
),并跳过降入因为该目录-prune
。-type d … -o -print
导致.*
打印所有匹配的非目录。如果要查找具有特定名称或模式的文件:
sudo find / -name 'Foo*' -path '*/.*'
在*/.*
对整个路径势力模式匹配是一个隐藏目录下。
您可能要在-xdev
之后添加,/
以避免遍历特殊的文件系统和可移动磁盘。
EasyFind是出色的替代应用程序,可以完成工作。它是免费和容易的。您可以在文件中搜索文本(甚至是不可见的文本)。<=这可能是查找配置文件的简便方法。
您可以从App Store https://itunes.apple.com/us/app/easyfind/id411673888?mt=12获取
免责声明:我与开发者无关。
sudo
除非需要在您无权访问的目录中进行搜索,否则不需要使用。在隐藏目录中搜索不需要提升的特权,如果这就是在您的示例中使用的原因。