which 查看可执行文件的位置
whereis 查看文件的位置
locate 配合数据库查看文件位置
find 实际搜寻硬盘查询文件名称
1、which
which 是通过PATH环境变量到该路径内查找可执行文件,所以基本的功能是寻找可执行文件
2 whereis
和find相比,whereis查找的速度非常快,这是因为linux系统会将系统内的所有文件都记录在一个数据库中,当使用whereis 和下面即将介绍的locate时,会从 数据库中查找数据,而不像find命令那样,通过遍历硬盘来查找,效率自然会很高。
但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们再用whereis和locate查找文件时时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是数据库文件没有被更新。
3、locate
locate 文件或者目录名称
4、find
语法:
find 路径 参数
参数说明
时间查找参数:
-atime n:将n*24小时内存取过的文件列出来
-ctime n:将n*24小时内改变、新增的文件或者目录列出来
-mtime:将n*24小时内修改过的文件或者目录列出来
-newer file:把比file还要新的文件列出来
名称超找参数:
-gid n:寻找群组ID为n的文件
-group name:寻找群组名称为name的文件
-uid n:寻找拥有者ID为n的文件
-user name:寻找用户者名称为name的文件
-name file :寻找文件命为file的文件
当我们用whereis和locate 无法找到我们我们需要的文件时,可以使用find,但是find是在硬盘上遍历查找,因此非常消耗磁盘的资源,而且效率也非常低,因此建议大家优先使用whereis 和locate。