在系统上找到一个文件

使用 bash,你可以使用 locate 命令轻松找到文件。例如,假设你正在查找文件 mykey.pem:

locate mykey.pem

有时文件有奇怪的名称,例如你可能有像 random7897_mykey_0fidw.pem 这样的文件。假设你正在寻找此文件,但你只记得 mykey 和 pem 部分。你可以使用如下管道将 locate 命令与 grep 结合使用:

locate pem | grep mykey

这将带来包含这两个部分的所有结果。

请注意,并非所有系统都安装了 locate 实用程序,而且许多系统都没有启用它。locate 快速高效,因为它会定期扫描你的系统并缓存其上每个文件的名称和位置,但如果没有启用该数据集,则它无法告诉你任何信息。你可以使用 updatedb 手动启动文件系统扫描,以便更新有关文件系统上文件的缓存信息。

如果你没有工作 locate,你可以回到 find 实用程序:

find / -name mykey.pem -print

大致相当于 locate mykey.pem,但每次为相关文件运行时都必须扫描文件系统,而不是使用缓存数据。这显然更慢,效率更低,但更实时。find 实用程序除了查找文件之外还可以做很多事情,但是对其功能的完整描述超出了本示例的范围。