Linux文件搜索之 find / locate / whereis / which

 

find最强大,什么都能查

which只能查可执行文件

whereis只能查二进制文件、说明文档,源文件等

locate能查所以,但跟whereis一样都是查数据库里的内容。




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

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

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

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


Linux文件搜索之 find / locate / whereis / which


1.find /etc -name my.so

2.locate 是用来通过文件名搜索文件的工具,它的用法也比较简单。locate 的应用,首先要通过updatedb建立索引数据库,然后才能应用;如果您新安装了软件或者存放了新的文件,也要先运行updatedb命令,以生成最新索引库。
用法: locate 文件名
我们要先运行updatedb;
[root@localhost ~]# updatedb
举例: 我们要找vsftpd.conf文件都位于哪个位置;
[root@localhost ~]# locate my.so

3.
whereis 是来寻找命令的二进制文件,同时也会找到其帮助文件;
比如我们不知道fdisk工具放在哪里,我们就可以用whereis fdisk 来查找;
[root@localhost ~]# whereis fdisk
fdisk: /sbin/fdisk /usr/share/man/man8/fdisk.8.gz
如果我们寻找grub在哪里,应该用如下命令,说明grub位于/sbin目录,他的帮助文件是grub.8.gz ,也就是man grub;
[root@localhost ~]# whereis grub
grub: /sbin/grub /etc/grub.conf /usr/share/grub /usr/share/man/man8/grub.8.gz

4.
which 和where 相似,只是我们所设置的环境变量中设置好的路径中寻找;比如;
[root@localhost ~]# which fdisk
/sbin/fdisk






find是从指定目录开始分级查找,缺点是速度慢,但是查的文件是当前存在在硬盘上的文件  
  locate是从生成的数据库开始查照,速度很快,因为只需要查找数据库,但是功能上有很多限制,而且跟数据库的新旧有关,默认是系统启动的时候,cron.daily来执行数据库更新的任务(有个updatedb).  
  至于whereis,我不是很清楚,不过感觉他只是查照可执行文件和相关的man,这个我说得不一定对,大家可以更正一下
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值