linux下的5个查找命令

linux下有5个查找命令,分别是which,whereis,locate,find,type.

which   查看可执行文件的位置

whereis  查看文件的位置

locate   配合数据库查看文件位置

find    实际搜寻硬盘查询文件名称


1、which
语法:

    [root@redhat ~]# which 可执行文件名称

    例如:

    [root@redhat ~]# which passwd

    /usr/bin/passwd

    which是通过 PATH环境变量到该路径内查找可执行文件,所以基本的功能是寻找可执行文件

2、whereis

语法:

    [root@redhat ~]# whereis [-bmsu] 文件或者目录名称

    参数说 明:

    -b : 只找二进制文件

    -m: 只找在说明文件manual路径下的文件

    -s : 只找source源文件

    -u : 没有说明文档的文件

3、 locate

语法:

    [root@redhat ~]# locate 文件或者目录名称

4、 find

语法:

    [root@redhat ~]# find 路径 参数

参 数说明:

时间查找参数:

    -atime n :将n*24小时内存取过的的文件列出来

    -ctime n :将n*24小时内改变、新增的文件或者目录列出来

    -mtime n :将n*24小时内修改过的文件或者目录列出来

    -newer file :把比file还要新的文件列出来

名称查找参数:

    -gid n :寻找群组ID为n的文件

    -group name :寻找群组名称为name的文件

    -uid n :寻找拥有者ID为n的文件

    -user name :寻找用户者名称为name的文件

    -name file :寻找文件名为file的文件(可以使用通配符)

5.type

type命令用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。如果一个命令是外部命令,那么使用-p参数,会显示该命令的路径,相当于which命令。

#type cd       系统会提示,cd是shell的自带命令(build-in);

#type grep      系统会提示,grep是一个外部命令,并显示该命令的路径;

#type -p vim      加上-p参数后,就相当于which命令。



当我们用whereis和locate无法查找到我们需要的文件时,可以使用find,但是find是在硬盘上遍历查 找,因此非常消耗硬盘的资源,而且效率也非常低,因此建议大家优先使用whereis和locate。

    locate 是在数据库里查找,数据库大至每天更新一次。

    whereis 可以找到可执行命令和man page

    find 就是根据条件查找文件。

    which 可以找到可执行文件和别名(alias)

猜你喜欢

转载自yanghua812.iteye.com/blog/1576005