除非您是一个完美主义者,所有文件都经过仔细标记和组织,否则您很可能一生中至少需要搜索一次文件。如果您是 Linux 新手,您可能想知道如何在 Linux 上查找文件。幸运的是,有多种方法可以做到这一点,这意味着每个人都可以选择最适合自己的方法。
一般来说,有两种类型的应用程序可以帮助您在 Linux 上查找文件和文件夹。第一个每次都会搜索实时文件系统。第二种类型是对文件进行索引并对该索引执行搜索的应用程序。本文介绍了两者的平衡组合,因此您可以根据需要混合搭配。
如何在终端中查找文件
是的,我知道……您不喜欢命令行界面。那太棒了。继续阅读,您会发现一个更适合您口味的应用程序。但别以为你能逃脱命令。此列表中的大多数应用程序只是用于查找和/或定位的图形界面,因此即使您不直接使用它们,您仍然可以使用它们。
搜索
让我们从最重要的命令开始。 Find是重要的 Linux 实用程序之一。根据指定的参数(“开关”)在设置的目录中搜索字符串。这个例子:
find /home/username/Documents -iname “writ*” -type f
这意味着我们正在对文档文件夹 ( -type f ) 中文件名以“writ”开头的文件执行不区分大小写 ( -iname ) 的搜索。正如您所看到的, find支持通配符,您还可以使用通配符按扩展名搜索文件(例如,’*.pdf’ 来查找文件夹中的所有 PDF 文件”)。

您可以使用-empty选项搜索空文件,或根据大小和修改时间搜索文件。 Find支持正则表达式,如果要搜索文件内容,可以与grep结合使用。查看官方文档(或在终端中输入man find )以获取更多信息。
寻找
定位使用不同的方法。它依赖于updatedb实用程序,该实用程序创建文件数据库并通过cron计划定期更新它们。这允许locate知道文件系统上当前有哪些文件。您还可以随时手动更新数据库。
Locate可以按名称搜索文件,并可以在查询中使用通配符和正则表达式。例如:
locate -ei grub.cfg
将列出名为“grub.cfg”的所有现有 (-e) 文件的路径。 -i 选项表示“不区分大小写”。如果您不知道要查找的文件的全名,只需键入其中的一部分, locate将显示名称中包含该单词的所有文件。

它在哪里
该命令具有非常特定的用途,因此您可能不会每天都使用它。 Whereis告诉您在哪里可以找到特定应用程序的源代码、二进制文件和用户手册。这意味着当您想要查找随机文本文件时,您不会运行whereis 。但是,如果您需要查看 GIMP 或 Firefox 存储其配置文件和可执行文件的位置,请使用它。

您可以运行不带选项的whereis来获取所有文件的列表,并为每个功能添加开关(-b 表示二进制文件,-s 表示源代码,手动是 -m)。
如何使用文件管理器搜索文件
大多数 Linux 文件管理器允许您按名称过滤文件或执行基本搜索。如果您不需要高级参数,这是一种简单的工作方法。
鹦鹉螺

按 Ctrl+F 或单击工具栏中的放大镜图标以访问搜索功能(在屏幕截图中以绿色突出显示)。搜索不区分大小写,因此您不必担心查询的大小写。您可以按类型和位置过滤文件,尽管后者在您可以调整的内容方面有些限制。
海豚

海豚搜索响应相同的键盘快捷键 (Ctrl+F)。或者,您可以从“编辑”菜单中打开它。您可以按名称、内容和位置(当前文件夹或整个文件系统)过滤文件。如果您在 Baloo 中启用文件索引,Dolphin 可以按类型和修改日期搜索文件。
十字军

由于其丰富的高级选项,Krusader 是 KDE 用户中流行的 Dolphin 替代品。 Krusader 的文件搜索功能有两个功能。它充当搜索和定位命令的 GUI。

前者允许您调整许多详细信息,例如文件类型、包含或排除的目录、大小、所有权和文件权限。 Krusader 可以搜索文件和档案(例如 ZIP 和 TAR)中的关键字,并可以使用正则表达式自定义查询。如果您还没有尝试过 Crusader,那么现在机会来了。
图纳尔

Thunar 与名为Catfish 的文件搜索实用程序集成,可提供快速且详细的结果。您可以按类型和修改日期过滤文件,并搜索文件内容和名称。 Catfish 支持模糊(不完整)文件名匹配,因此您无需知道要查找的文件的确切名称。
如何使用启动器搜索文件
启动器通常用于启动应用程序。但是,它也可以用于通过启用各种插件来搜索文件。这些都是快速且实用的。只需开始输入,结果就会立即弹出。 Linux 有许多启动器。让我们关注一些例子。
库普弗

Kupfer 是一个简单的启动器,可在 Debian、Ubuntu、Fedora 和 Arch Linux 存储库中使用。它附带了许多插件,允许您使用locate命令搜索文件,并且您可以创建自己的索引文件夹目录。

Kupfer 是一个基于动作的启动器。当您输入搜索关键字时,Kupfer 会显示您可以对结果执行的操作列表。这些取决于您已启用的插件,可以通过在下拉菜单中选择它们来启用。
K赛跑者

KRunner 是默认的 KDE 启动器,可以在“系统偏好设置 – Plasma 搜索”对话框中进行配置。

与 Kupfer 一样,它支持许多插件,不仅可以帮助您查找文件,还可以与其他 Linux 应用程序和 Plasma 桌面环境的一部分进行交互。 KRunner 可以搜索 YouTube 和 Wikipedia、查看最近的文档、按类型搜索文件等等。
阿尔伯特

Albert 的灵感来自 OS X 的 Alfred 启动器。虽然看起来很简单,但艾伯特有很多选择可以玩。正如您所料,还有插件,但“文件”是这里最重要的。

该插件允许您对 Albert 监视和依赖的目录进行索引。您可以启用模糊(不完整)匹配并选择要索引的文件类型。要搜索文件,只需按指定的键盘快捷键即可运行 Albert 并开始输入查询。
变异

Mutate 是另一个受 Alfred 启发的 Linux 启动器,它没有 Albert 那么多的选项。尽管如此,它仍然具有多种搜索类型,包括文件搜索。可以按名称和文件扩展名搜索文件。 “设置”对话框有点特殊:它向您显示 Mutate 正在使用的脚本,但不允许您配置除关键字和键盘快捷键之外的任何内容。
使用专用的 Linux 应用程序搜索文件
到目前为止,我们主要讨论了简单的文件搜索解决方案。这些对于日常搜索非常有用,但在复杂查询或搜索文件内容时用处不大。如果您想要更强大的功能,请考虑以下建议。
搜索 GNOME 文件
如果您的发行版中未安装 GNOME Search,请在存储库中查找gnome-search-tool包。 GNOME 搜索使用locate 、 find和grep命令并支持通配符和部分文件名匹配。您可以通过从下拉菜单中进行选择并单击“添加”来组合多个搜索选项。
查找
KFind 是 GNOME 搜索的 KDE 等效项,带有一些附加选项。您可以搜索文件名或文件内容。如果您在 KDE 系统上启用了文件索引,则可以搜索索引以加快该过程。这些选项分为多个选项卡,最后一个选项卡(属性)允许您按大小、修改日期和所有权搜索文件。除了正则表达式和通配符之外,KFind 还支持用问号代替查询中的单个字符。例如,搜索“no?es”将找到名称为“noses”、“notes”和“nodes”的文件。
统一破折号

忠实于 Unity 桌面的 Ubuntu 用户将会熟悉 Dash。 Unity Dash 可以根据多个参数搜索文件和文件夹:文件名、修改日期、文件类型和大小。您可以安装各种Unity 瞄准镜和镜头来扩展功能。将外部服务集成到 Dash 中,以便您可以搜索浏览器书签、Google 文档文件、网络历史记录等。
搜索猴子

尽管SearchMonkey相对较老,但它仍然是一个功能齐全的桌面搜索应用程序。正则表达式是主要焦点,有一个“测试正则表达式”工具可以帮助您创建正则表达式。 SearchMonkey 支持所有重要的搜索参数(文件名、修改日期、大小、文件内容),以及将递归搜索深度限制为选定数量的文件夹的选项。

您还可以将搜索结果保存为 CSV 文件并限制每个查询的结果数量。
医生获取者

DocFetcher 是一个桌面搜索引擎,适合那些经常需要搜索文件内容而不仅仅是文件名的人。想想研究人员、学生和其他处理大量基于文本的文件的人。 DocFetcher 首先构建所选文件和文件夹的数据库。每当 DocFetcher 检测到文件已更改时,该数据库就会自动更新。
搜索文件时,您可以按类型和大小过滤文件,也可以使用正则表达式进行详细查询。 DocFetcher 可以搜索 PDF、EPUB、HTML、RTF 和 Office 文件,以及存档文件(ZIP、TAR、7z 等)甚至 Outlook 电子邮件。
DocFetcher 的一大优点是它有便携式版本,因此您可以将数据库和应用程序放在 USB 记忆棒上并在任何地方使用。
记住

Recoll 可能是 Linux 上最强大的桌面搜索引擎。它与DocFetcher类似,用于搜索文件的内容。第一次运行它时,系统会要求您对文件建立索引。您可以选择要索引的目录和文件类型,并按大小限制文件。 Recoll 设置更新计划,以便您的索引始终与实际文件同步。如果需要,您可以创建多个文件索引并仅搜索一个或所有文件。

您可以按名称搜索文件或在文件中搜索关键字。召回允许您按多个标准过滤结果。您还可以查看相关和相似的文件、搜索文件中的短语以及通过词干支持识别单词形式。这意味着,如果您搜索“work”,结果将包括包含“working”、“worked”、“workers”等的文件。
支持的文件格式包括常规文本文件、日志、手册页、HTML、PDF、CHM、RTF、DJVU 和 EPUB 文件、Libre 和 Microsoft Office 文件(包括 Excel 和 Powerpoint 文档)、TAR、RAR、7z 和 ZIP 存档。请注意,某些功能可能需要外部库或辅助实用程序。
另请参阅:如何在 Linux 计算机上同步 OneDrive 帐户
大多数文件搜索工具都支持相同的选项,因此选择一个主要是为了方便起见,归根结底是决定什么最适合您的典型工作流程。这个列表可能看起来很长,但还有其他适用于 Linux 的文件搜索实用程序。推出ANGRYsearch,这是一个旨在成为最快搜索工具的新项目。那你呢?您还知道其他在 Linux 上查找文件的应用程序吗?您可以在评论中告诉我们一些建议吗?
图片来源: Mutate 截图、 DocFetcher 截图




![2021 年如何设置 Raspberry Pi Web 服务器 [指南]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)

