linux文件名查找命令(which,whereis,locate)实例教程

发布时间:2020-02-06编辑:脚本学堂
本文介绍了linux下文件名查找命令which、whereis、locate的用法,linux文件查找命令的实例教程,需要的朋友参考下。

linux文件名查找命令which、whereis、locate用法

1,文件名查找
使用find查询时,由于磁盘查询,所以速度较慢。
通常linux下查询会使用which, whereis, locate来查询,由于是利用数据库查询,所以速度很快。

2,which
比如常用的ls命令,可以使用which命令来查询地址,即该命令存放位置。
which使用PATH 环境变量去查找文件名, which -a 返回所有的查到的命令, 默认返回第一条。
 

复制代码 代码示例:
$ which grep
/bin/grep
$ which ll
alias ll='ls -l --color=tty'
/bin/ls
#使用alias别名

3. whereis
whereis用来查询程序名$ whereis
whereis [ -sbmu ] [ -SBM dir ... -f ] name...
-b : 查找二进制格式文件
-s : 查找source 源文件 (www.jb200.com 脚本学堂)
-m : 查找在说明文件manual路径下的文件
-u : 查找不在上述三个选项中的特殊文件

例如:
 

复制代码 代码示例:
$ whereis grep
grep: /bin/grep /usr/share/man/man1/grep.1.gz /usr/share/man/man1p/grep.1p.gz
#查询二进制文件
$ whereis -b grep
grep: /bin/grep
#查询手册说明文件 man grep
$ whereis -m grep
grep: /usr/share/man/man1/grep.1.gz /usr/share/man/man1p/grep.1p.gz

4. locate
linux将系统内文件列在一个数据库文件(/var/lib/slocate/slocate.db)。
locate通过数据库文件查询。
一般这个文件每天更新一次, 配置在/etc/updatedb.conf 里面配置是否每天更新,以及更新目录。
可以手动运行:
$ updatedb
来更新数据库。(centos与debian中安装updatedb命令的方法)

使用locate,后面跟命令:
$ locate passwd