如何安装“定位命令”在Linux中查找文件

locate是一个命令行实用程序,可以更有效地在Linux中按名称查找文件,因为它使用由updatedb程序填充的一个或多个数据库。

locate是一个命令行工具,用于在Linux中按名称查找文件,就像find命令一样 但是,与其对应方式相比,效率更高。 它使用由updatedb程序填充的一个或多个数据库,并将与至少一种模式(用户提供)相匹配的文件名打印到标准输出。

定位包由GNU findutilsmlocate包提供。 已知这些软件包提供了相同的程序实现。 在大多数CentOS / RHEL系统上, findutils是预安装的,但是,如果您尝试运行locate命令 ,则可能会遇到以下错误:

-bash: locate: command not found

在本文中,我们将向您展示如何安装mlocate软件包,它提供了locateupdatedb命令来查找Linux系统中的文件。

以下是显示上述错误和查询findutils包的示例输出。

$ locate bash_completion.sh
$ rpm -qa | grep findutils
找不到命令

找不到命令

要安装mlocate ,请按照所示的Linux发行版使用YUMAPT软件包管理器。

$ sudo yum install mlocate    [On CentOS/RHEL]
$ sudo apt install mlocate    [On Debian/Ubuntu]     

安装mlocate后 ,需要用sudo命令更新locate命令使用的updatedb ,否则会出错。 默认的数据库存储位置是/var/lib/mlocate/mlocate.db

$ sudo updatedb

一旦数据库被更新,现在尝试运行locate命令,这个命令应该在这个时候工作。

$ locate bash_completion.sh
使用定位命令查找文件

使用定位命令查找文件

要按照您输入的模式查找完全匹配,请按照以下语法使用此-b选项和\ globbing选项。

$ locate -b '\bash_completion.sh'

注意 :您可以使用LOCATE_PATH环境变量来设置额外数据库的路径,这些数据库是在默认数据库或在命令行上使用-database标志列出的任何数据库之后读取的。

就这样! 在本指南中,我们向您展示了如何安装在Linux系统上提供locateupdatedb命令的mlocate软件包。 通过下面的反馈表与我们分享您的意见。