您的位置:首页 > 运维架构 > Linux

centos 学习日记 文件名的查找 whereis   locate

2013-05-19 14:45 239 查看
文件名查找 whereis locate
查找文件。通常我们用whereis 或者 locate 命令进行查询。如果查找不到,再用find 命令来查找、
因为whereis ,locate 命令是利用数据库来查找数据的,所以速度很快。而且并没有实际查找硬盘、比较节省时间。
用whereis 查找特定的文件 [kin@kin /]$ whereis [-bmsu] 文件或目录 参数; -b :只找二进制格式的文件 -m :只找说明文件 manual 路径下的文件 -s :只找source 源文件 -u :查找不在上述三个选项中的其他特殊文件 范例
[kin@kin /]$ whereis ifconfig ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz #直接whereis filename [root@kin /]# whereis ifconfig ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz #切换到了root用户,结果与一般用户一样 [root@kin /]# whereis -m ifconfig #加‘-m’ 属性。只找出跟ifconfig 有关的‘说明文件’ ifconfig: /usr/share/man/man8/ifconfig.8.gz locate命令使用。
[root@kin /]#locate [-ir] keyword 参数: -i:忽略大小写的差异 -r:后面可接正则表达式。 范例: [root@kin /]# locate passwd /etc/passwd /etc/passwd- /etc/news/passwd.nntp /etc/pam.d/passwd ……. 这个命令使用更加简单,直接输入文件部分名称,如果你不记得完整的文件名,这个命令可以好好的帮助到你。
比如说、你忘记了passwd 这个文件名。只记得pass 前面这段。你可以用:locate pass 可以查询到所有含有pass字段 的文件名。
但是,这个命令有限制的
和上一个whereis命令一样。他们查找的数据都是在一个数据库文件里面的。这个命令/var/lib/mlocate 文件里面。
可是!数据库的创建默认是每天执行一次的,所有当你新建文件后查询该文件,那么。Locate会提示‘找不到’
可以选择手动更新数据库。
[root@kin /]#updatedb update :根据/etc/updatedb.conf 的设置去查找系统硬盘内的文件名,并更新/etc/lib/mlocate内的数据库文件。
Locate:依据/var/lib/mlocate 内的数据库记载,找出用户输入的关键字文件名。。。

----鸟哥的私房菜188
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息