功能介绍:
locate命令显然是find-name的另一种写法,而且要比前者快得多linux vi,缘由在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,值得注意的是:版本不同,会有所不同。有的版本位置是/var/lib/mlocate/mlocatedblinux搜索文件所在目录,还有的是/var/lib/slocate/slocate.db,这个数据库中富含本地所有文件信息。Linux系统手动创建这个数据库linux搜索文件所在目录,但是每晚手动更新一次,所以使用locate命令查不到最新变动过的文件。为了防止这些情况redhat linux,可以在使用locate之前,先使用updatedb命令,自动更新数据库。
句型格式:locate[参数][式样]
常用参数:
-d或–database=
指定数据库所在的目录
–help
显示帮助
–version
显示版本信息
参考实例:
显示帮助:
[root@linuxcool ~]# locate --help Usage: locate [OPTION]… [PATTERN]… Search for entries in a mlocate database. -A, --all only print entries that match all patterns -b, --basename match only the base name of path names -c, --count only print number of found entries -d, --database DBPATH use DBPATH instead of default database (which is /var/lib/mlocate/mlocate.db) -e, --existing only print entries for currently existing files -L, --follow follow trailing symbolic links when checking file existence (default) -h, --help print this help -i, --ignore-case ignore case distinctions when matching patterns -l, --limit, -n LIMIT limit output (or counting) to LIMIT entries -m, --mmap ignored, for backward compatibility -P, --nofollow, -H don't follow trailing symbolic links when checking file existence -0, --null separate entries with NUL on output -S, --statistics don't search for entries, print statistics about each used database -q, --quiet report no error messages about reading databases -r, --regexp REGEXP search for basic regexp REGEXP instead of patterns --regex patterns are extended regexps -s, --stdio ignored, for backward compatibility -V, --version print version information -w, --wholename match whole path name (default) Report bugs to mitr@redhat.com. 显示版本信息: [root@linuxcool ~]# locate --version mlocate 0.26 Copyright (C) 2007 Red Hat, Inc. All rights reserved. This software is distributed under the GPL v.2. This program is provided with NO WARRANTY, to the extent permitted by law.
搜索/etc目录下所有以sh开头的文件:
[root@linuxcool ~]# locate /etc/sh /etc/shadow /etc/shadow- /etc/shells
搜索/etc目录下以k开头的文件:
[root@linuxcool ~]# locate /etc/k /etc/kdump.conf /etc/kernel /etc/krb5.conf /etc/krb5.conf.d /etc/ksmtuned.conf /etc/kernel/postinst.d /etc/kernel/postinst.d/51-dracut-rescue-postinst.sh
查找和pwd相关的所有文件:
[root@linuxcool ~]# locate pwd /boot/extlinux/pwd.c32 /etc/.pwd.lock /usr/bin/pwd /usr/bin/pwdx /usr/include/pwd.h /usr/lib/modules/3.10.0-514.el7.x86_64/kernel/drivers/watchdog/hpwdt.ko /usr/lib64/cracklib_dict.pwd /usr/lib64/python2.7/lib-dynload/spwdmodule.so /usr/sbin/unix_chkpwd /usr/share/cracklib/cracklib-small.pwd /usr/share/cracklib/pw_dict.pwd /usr/share/man/man0p/pwd.h.0p.gz /usr/share/man/man1/pwd.1.gz /usr/share/man/man1/pwdx.1.gz /usr/share/man/man1p/pwd.1p.gz /usr/share/man/man3/lckpwdf.3.gz /usr/share/man/man3/ulckpwdf.3.gz /usr/share/man/man8/unix_chkpwd.8.gz /usr/share/man/overrides/de/man1/pwdx.1 /usr/share/man/overrides/fr/man1/pwdx.1 /usr/share/man/overrides/uk/man1/pwdx.1 /usr/share/syslinux/pwd.c32 /usr/src/kernels/3.10.0-514.el7.x86_64/include/config/hpwdt /usr/src/kernels/3.10.0-514.el7.x86_64/include/config/hpwdt/nmi /usr/src/kernels/3.10.0-514.el7.x86_64/include/config/hpwdt/nmi/decoding.h
以上是locate 命令:比 find -name 更快的文件搜索工具的详细内容。更多信息请关注PHP中文网其他相关文章!