1.locate命令
优点:快,占用资源少。
方法:locate 文件名,例如:locate cangls (慕课网上老师就是用的苍老师做例子- -)
touch完文件后,无法立即用locate搜索到, 是因为locate的数据库,是每天更新一次。 所以如果想要立即搜索到,可以用updatedb的方法强制更新locate数据库。
locate数据库是按照 /etc/updatedb.conf配置文件搜索的,当使用vi /etc/updatedb.conf查看时,会发现有四句话:
PRUNE_BIND_MOUNTS = "yes" // 开启搜索限制,yes就是以下筛选规则全都有效。
PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset debugfs devpts ecryptfs exofs fuse fusectl gfs gfs2 hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs sockfs sysfs tmpfs ubifs udf usbfs vmhgfs" // PRUNEFS = 的意思:搜索时,不搜索的文件系统。不筛选这些文件系统
PRUNENAMES = ".git .hg .svn" // PRUNENAMES = 的意思:搜索时,不搜索的文件类型。整句话意思:不搜索文件名中包含.git .hg .svn这些关键字的文件
PRUNEPATHS = "/afs /media /net /sfs /tmp /udev /var/cache/ccache /var/spool/cups /var/spool/squid /var/tmp" // PRUNEPATHS = 的意思:搜索时,不搜索的路径。这些目录中的更新文件 不搜索。