command简介locate(定位)命令用于查找文件或目录。locate命令比find-name快得多,因为它不搜索特定目录,而是搜索数据库/var/lib/mlocate/mlocate.db。该数据库包含所有本地文件信息。Linux系统自动创建这个数据库,每天自动更新一次。因此,我们在使用whereis和locate查找文件的时候,有时会发现已经删除的数据,或者刚刚创建的文件,但是找不到。原因是数据库文件没有更新。为避免这种情况,您可以在使用locate之前使用updatedb命令手动更新数据库。整个定位工作实际上由四部分组成。/usr/bin/updatedb主要是用来更新数据库的。/usr/bin/locate由crontab自动完成查询文件位置/etc/updatedb.confupdatedb的配置文件/var/lib/mlocate/mlocate.db用来存放文件信息如果文件没有这个系统中命令//Centos>yuminstallmlocate-y//Ubuntu>sudoapt-getinstallmlocate-y第一次需要执行updatedb,否则locate:不能stat()/var/lib/mlocate会出现/mlocate.db':Nosuchfileordirectory`用法locate[OPTION]...[PATTERN]...命令参数-e将被排除在搜索范围之外。-1如果是1.然后启动安全模式。在安全模式下,用户将看不到他们看不到的文件。这会减慢速度,因为locate必须转到实际的文件系统才能获取文件的权限数据。-f排除特定的文件系统,比如我们不需要把文件放在数据库中的proc文件系统中。-q安静模式,不会显示任何错误信息。-n最多显示n个输出。-r使用正则表达式作为搜索条件。-o指定存储库的名称。-d指定数据库的路径-h显示辅助信息-V显示程序的版本信息查找所有与pwd相关的文件>locatepwd/etc/.pwd.lock/home/cpt/.local/share/fish/generated_completions/pwd.fish/home/cpt/.local/share/fish/generated_completions/pwdx.fish/root/.local/share/fish/generated_completions/pwd.fish/root/.local/share/fish/generated_completions/pwdx.fish/root/Python-3.6.4/Doc/library/pwd.rst/root/Python-3.6.4/Doc/library/spwd.rst/root/Python-3.6.4/Lib/test/test_pwd.py/root/Python-3.6.4/Lib/test/test_spwd.py/root/Python-3.6.4/Modules/pwdmodule.c/root/Python-3.6.4/Modules/pwdmodule.o/root/Python-3.6.4/Modules/spwdmodule.c/root/Python-3.6.4/Modules/clinic/pwdmodule.c.h/root/Python-3.6.4/Modules/clinic/spwdmodule.c.h/root/Python-3.6.4/build/lib.linux-x86_64-3.6/spwd.cpython-36m-x86_64-linux-gnu.so/root/Python-3.6.4/build/temp.linux-x86_64-3.6/root/Python-3.6.4/Modules/spwdmodule.o/usr/bin/pwd/usr/bin/pwdx/usr/include/pwd.h/usr/lib/golang/src/syscall/pwd_plan9.go/usr/lib/modules/3.10.0-1062.9.1.el7.x86_64/内核/驱动程序/watchdog/hpwdt.ko.xz/usr/lib/modules/3.10.0-1160.11.1.el7.x86_64/kernel/drivers/watchdog/hpwdt.ko.xz/usr/lib/modules/3.10。0-957.el7.x86_64/kernel/drivers/watchdog/hpwdt.ko.xz/usr/lib64/cracklib_dict.pwd/usr/lib64/python2.7/lib-dynload/spwdmodule.so/usr/lib64/python3。6/lib-dynload/spwd.cpython-36m-x86_64-linux-gnu.so/usr/local/python/lib/python3.6/lib-dynload/spwd.cpython-36m-x86_64-linux-gnu.so/usr/local/python/lib/python3.6/test/test_pwd.py/usr/local/python/lib/python3.6/test/test_spwd.py/usr/local/python/lib/python3.6/test/__pycache__/test_pwd.cpython-36.opt-1.pyc/usr/local/python/lib/python3.6/test/__pycache__/test_pwd.cpython-36.opt-2.pyc/usr/local/python/lib/python3.6/test/__pycache__/test_pwd.cpython-36.pyc/usr/local/python/lib/python3.6/test/__pycache__/test_spwd.cpython-36.opt-1.pyc/usr/local/python/lib/python3.6/test/__pycache__/test_spwd.cpython-36.opt-2.pyc/usr/local/python/lib/python3.6/test/__pycache__/test_spwd.cpython-36.pyc/usr/local/share/jcloud/jdog-monitor/deploy/kunlunmirror/9_de96bb875c9807de5e4a6e11fdea0b07/lib64/python3.6/lib-dynload/spwd.cpython-36m-x86_64-linux-gnu.so/usr/local/share/jcloud/jdog-monitor/deploy/kunlunmirror/9_de96bb875c9807de5e4a6e11fdea0b07/lib64/python3.6/test/test_pwd.py/usr/local/share/jcloud/jdog-monitor/deploy/kunlunmirror/9_de96bb875c9807de1fde4a64e16/test/test_spwd.py/usr/sbin/unix_chkpwd/usr/share/cracklib/cracklib-small.pwd/usr/share/cracklib/pw_dict.pwd/usr/share/fish/functions/__fish_pwd.fish/usr/共享/fish/functions/prompt_pwd.fish/usr/share/fish/man/man1/prompt_pwd.1/usr/share/fish/man/man1/pwd.1/usr/share/man/man1/pwd.1。gz/usr/share/man/man1/pwdx.1.gz/usr/share/man/man8/unix_chkpwd.8.gz/usr/share/man/mann/pwd.n.gz搜索etc中的所有shdirectory开头的文件>locate/etc/sh/etc/shadow/etc/shadow-/etc/shells输出locate使用的数据库文件的信息,包括数据库中记录的文件/目录数等>locate-SDatabase/var/lib/mlocate/mlocate.db:289,742目录es516,673个文件60,174,514字节的文件名52,034,824字节用于存储数据库updatedb的配置文件/etc/updatedb.conf>cat/etc/updatedb.confPRUNE_BIND_MOUNTS="yes"PRUNEFS="9pafsanon_inodefsautoautofsbdevbinfmt_misccgroupcifscodacpusetdebugfsdevptsecryptfsexofsfusefuse.sshfsfusectlgfsgfs2gpfs????hugetlbfsinotifyfsiso9660jffs2lustremqueuencpfsnfsnfs4nfsdpipefsprocramfsrootfsrpc_pipefssecurityfsselinuxfssfssockfssysfstmpfsubifsudfusbfsfuse.glusterfscephfuse.ceph"PRUNENAMES=".git.hg.svn"PRUNEPATHS="/afs/media/mnt/net/sfs/tmp/udev/var/cache/ccache/var/lib/yum/yumdb/var/spool/cups/var/spool/squid/var/tmp/var/lib/ceph"PRUNE_BIND_MOUNTS="yes"#启用搜索限制PRUNEFS=#不搜索文件系统PRUNENAMES=#不搜索文件类型PRUNEPATHS=不搜索路径原文链接:https//rumenz.com/rumenbiji/...微信公众号:入门
