码迷,mamicode.com
首页 > 其他好文 > 详细

which, whereis, locate, find的区别

时间:2016-03-22 06:45:09      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:where


which       查看可执行文件的位置,这些可执行文件都是在PATH环境变量中设置好的,所以which基本上都是查找可执行的文件

 

[root@localhost ~]# which yum
/usr/bin/yum

whereis    查看文件的位置 

[root@redhat ~]# whereis [-bmsu] 文件或者目录名称 
参数说 明: 
-b : 只找二进制文件 
-m: 只找在说明文件manual路径下的文件 
-s : 只找source源文件 
-u : 没有说明文档的文件 

更多的参数可以通过man whereis 来查看, 

locate 文件或者目录名称 

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

和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。 
但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。可以通过updatedb 来强制性更新本地的数据库

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

参数也是很多,我经常用的就是 

find / -name zabbix.conf

更多的参数可以参考下面 或者通过 man 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的文件(可以使用通配符


本文出自 “站在巨人的肩膀上看世界” 博客,请务必保留此出处http://lixiaotao.blog.51cto.com/985722/1753536

which, whereis, locate, find的区别

标签:where

原文地址:http://lixiaotao.blog.51cto.com/985722/1753536

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!