使用说明:
直接 locate 文件名,eg: locate passwd但与find 不同: find 是去硬盘找. locate 只在/var/lib/slocate资料库中找locate的速度比find快,它并不是真的查找,而是查数据库,一般文件数据库在/var/lib/slocate/slocate.db中,所以locate的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,也可以手工升级数据库 locate -u;
更多使用,请参考man~~
数据库/var/lib/slocate/slocate.db记录了创建数据库时文件系统上的文件数据,也就是整个/下,只是这个数据库放在/var下,所理论上以是可以查找其他目录的内容,你locate passwd,就会显示/etc/passwd~
例子给了啊,比如你要找passwd文件,就在终端下输入: locate passwd
但是,这个东西还是有使用上的限制呦!为什麼呢?您会发现使用 locate 来寻找资料的时候特别的快, 这是因为 locate 寻找的资料是由『已建立的资料库 /var/lib/slocate/』 里面的资料所搜寻到的
使用locate可以查找文件系统里的命令、设备、手册页、数据文件或可根据名字识别的任意文件。示例如下:$ locate e100 /lib/modules/2.6.20-1.2949.fc7/kernel/drivers/net/e100.ko /lib/modules/2.6.20-1.2949.fc7/kernel/drivers/net/e1000/e1000.ko上面的示例会查找e100.ko和e1000.ko这两个内核模块。locate命令使用-i选项时不区分大小写,否则区分大小写,示例如下:
$ locate -i itco_wdt /lib/modules/2.6.20-1.2949.fc7/kernel/drivers/char/watchdog/iTCO_wdt.ko下面几个示例使用locate加上正则表达式:
$ locate -r /ls$ 查找以/ls$结尾的文件 /bin/ls /usr/share/locale/l10n/ls $ locate -r mkfs*3 查找文件名包含mkfs和3的文件 /sbin/mkfs.ext3 /usr/share/man/man8/mkfs.ext3.8.gz $ locate -r ^/boot/grub/me 查找以/boot/grub/me开头的文件 /boot/grub/menu.lstRPM包mlocate(有些Linux发行版为slocate)会提供一个cron作业,每天运行一次updatedb命令,用于更新文件locate数据库。由于用户要找的文件可能在数据库上次更新后已删除,可以使用locate -e检查数据库中找到的文件是否仍然存在:
$ locate -e myfilename手工运行updatedb命令可以立即更新locate数据库:
# updatedb转载:http://anwj336.blog.163.com/blog/static/8941520920117622225173/