Linux文件查找命令-(which/whereis/locate)
1、which命令
描述:在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。(查找系统命令位置)
用法:which [参数选项] [可执行文件名]
参数:
主要参数 |
意义 |
-n |
指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名 |
-w |
指定输出结果栏位宽度
扫描二维码关注公众号,回复:
12134990 查看本文章
![]() |
-v |
查看版本信息 |
Eg:
[root@test ~]#which pwd #查找pwd命令,并显示详细路径
2、whereis命令
描述:定位可执行文件、源代码文件、帮助文件在文件系统中的位置。(搜索程序名)
用法:whereis [参数选项] [程序名]
参数:
参数 |
意义 |
-b |
定位可执行文件 |
-m |
定位帮助(man)文件 |
-s |
定位源代码文件 |
-u |
搜索默认路径下除可执行、源代码、帮助外其他文件 |
-B/-M/-S |
指定搜索可执行/帮助/源代码文件路径 |
Eg:
[root@test ~]#whereis zabbix #查找与zabbix相关的所有文件
3、locate命令
描述:配合数据库查看文件位置。
说明:locate命令可以在搜寻数据库时快速找到文件,数据库由updatedb程序来更新,updatedb是由cron daemon周期性建立的,locate所找到的档案若是最近才建立或刚更名,可能会找不到,在内定值中,updatedb每天会跑一次,可以由修改crontab来更新设定值。
locate指定用在搜寻符合条件的档案,它会去储存档案与目录名称的数据库内,寻找合乎范本样式条件的档案或目录,可以使用特殊字元(如”*” 或”?”等)来指定范本样式,如指定范本为kcpa*ner, locate会找出所有起始字串为kcpa且结尾为ner的档案或目录,如名称为kcpartner若目录录名称为kcpa_ner则会列出该目录下包括子目录在内的所有档案。
locate指令和find找寻档案的功能类似,但locate是透过update程序将硬盘中的所有档案和目录资料先建立一个索引数据库,在执行loacte时直接找该索引,查询速度会较快,索引数据库一般是由操作系统管理,但也可以直接下达update强迫系统立即修改索引数据库。
用法:locatel [参数选项] [文件名称]
参数:
参数 |
功能 |
-e |
排除在寻找范围之外 |
-f |
将特定的档案系统排除在外 |
-q |
安静模式,不会显示任何错误信息 |
-n |
最多显示n个输出 |
-o |
指定资料库名称 |
-d |
指定资料库路径 |
-h |
显示辅助信息 |
-V |
显示程序的版本讯息 |
Eg:
[root@test ~]#locate cp #查找与cp相关的所有文件 [root@test ~]#locate/etc/va #查找/etc目录下所有va开头文件
个人公众号: