Linux操作命令(四) 1.which命令 2.whereis命令 3.locate命令
1、which命令
which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,它一般用来确认系统中是否安装了指定的软件
确认是否安装了 gcc:which gcc
查看 cd 命令的位置路径:which cd
2、whereis命令
whereis 命令主要用于定位可执行文件、帮助文件和源代码文件在文件系统中的位置。
whereis 命令查找速度非常快,但搜索结果有时候会不准确,比如刚添加的文件可能搜不到
原因:whereis查找不是磁盘中漫无目的乱找,而是在一个数据库中(/var/lib/mlocate/mlocate.db)查询。这个数据库是 Linux 系统自动创建的,包含有本地所有文件的信息,并且每天通过自动执行 updatedb 命令更新一次。也正是因为这个数据库要每天才更新一次,就会使得 whereis 命令的搜索结果有时候会不准确,比如刚添加的文件可能搜不到
参数
|
描述
|
---|---|
-b
|
定位可执行文件
|
-m
|
定位帮助文件
|
-s
|
定位源代码文件
|
-u
|
搜索默认路径下除可执行文件、源代码文件和帮助文件以外的其它文件
|
-B
|
指定搜索可执行文件的路径
|
-M
|
指定搜索帮助文件的路径
|
-S
|
指定搜索源代码文件的路径
|
搜索 gcc 可执行文件的路径:whereis -b gcc
搜索 gcc 帮助文件的路径:whereis -m gcc
搜索 gcc 源代码的路径:whereis -s gcc
3、locate 在文件系统中快速查找文件
locate 命令跟 whereis 命令类似,且它们使用的是相同的数据库。但 whereis 命令只能搜索可执行文件、联机帮助文件和源代码文件,如果要获得更全面的搜索结果,可以使用 locate 命令。
locate 命令使用了十分复杂的匹配语法,可以使用特殊字元(如’*’和’?’)来指定需要查找的样本
常用参数
参数 | 描述 |
---|---|
-q | 安静模式,不会显示任何错误讯息 |
-n | 至多显示 n 个输出 |
-r | 使用正则表达式做寻找的条件 |
-V | 显示版本信息 |
常用范例
首先需要安装并更新数据库:
sudo apt-get install locate
sudo updatedb
搜索 etc 目录下所有以 sh 开头的文件:locate /etc/sh
搜索 etc 目录下文件名包含 lou 的文件:locate /etc/*lou*