阿里云网站建设部署与发布视频,做服装要看国外哪些网站,专业排名优化网站,wordpress.图片旋转代码文章目录
locate
命令介绍
语法格式
基本参数
参考实例
1#xff09;查找1.txt相关的文件
2#xff09;查找包含pass和txt都有的文件
3#xff09;只匹配文件名#xff0c;有路径的情况下不进行匹配
4#xff09;匹配不区分大小写的文件
5#…文章目录
locate
命令介绍
语法格式
基本参数
参考实例
1查找1.txt相关的文件
2查找包含pass和txt都有的文件
3只匹配文件名有路径的情况下不进行匹配
4匹配不区分大小写的文件
5使用基本正则进行匹配并显示行数
6查找文件最多输出5行
7匹配查找多个包含log或者txt的文件并显示行数
8显示要查找的文件
9搜索指定目录下的文件并输出到文件里
命令总结
locate
命令介绍
还是一样先通过帮助文档了解含义 NAME locate - find files by name locate命令的功能是通过文件名称来查找文件与find命令进行全局搜索不同locate命令是读取这个数据文件/var/lib/locatedb进行查找。由于缩小了查找的范围因此这个命令查找文件会比find要快很多。 小提示使用locate命令时若要同步当天建立的文件信息需要先对数据库文件进行更新查找前可以使用updatedb命令同步数据再使用locate查找文件。 语法格式 locate的语法格式相比find来说要简易些能用到的参数只有几个。
语法locate 【参数】查找的文件 SYNOPSIS locate [OPTION]... PATTERN... 基本参数
此命令的常用参数有以下这些以表格形式显示
-A显示匹配所有模式的文件可使用多个匹配值选择要查找的文件-b只能匹配文件名有绝对路径的情况下不进行匹配-c只显示文件数量-d指定数据库所在目录-e显示查找的文件-n最多输出n个文件-r可使用基本正则表达式--regex可使用扩展正则表达式-i忽略大小写
参考实例
1查找1.txt相关的文件
先同步到数据库直接查找文件
[rootlocalhost ~]# updatedb
[rootlocalhost ~]# locate 1.txt
/etc/brltty/brl-ts-pb65_pb81.txt
/etc/pki/nssdb/pkcs11.txt
/home/host/1.txt
/root/.1.txt.swp
/root/1.txt
/root/1.txt.gz
/root/b_01.txt
/root/user1.txt
/root/.cache/tracker/parser-sha1.txt
/root/prometheus/1.txt
/root/test/brl-ts-pb65_pb81.txt
....
2查找包含pass和txt都有的文件
-A参数是可以匹配2个或者多个都有的值才会显示相应的文件
[rootlocalhost ~]# locate -A pass txt
/root/passwd.txt3只匹配文件名有路径的情况下不进行匹配
locate加了-b的参数查找全路径的文件发现不进行匹配
[rootlocalhost ~]# locate -b 1.txt
/etc/brltty/brl-ts-pb65_pb81.txt
/etc/pki/nssdb/pkcs11.txt
/home/host/1.txt
/root/.1.txt.swp
/root/1.txt
......
[rootlocalhost ~]# locate -b /root/1.txt4匹配不区分大小写的文件
-i表示不区分大小写的文件大小写的文件都能进行匹配
[rootlocalhost ~]# locate -i testdir
/root/TESTDIR
/root/testdir5使用基本正则进行匹配并显示行数
用正则进行匹配以/var开头以log结尾的内容
[rootlocalhost ~]# locate -r ^/var/.*\.log$ -c
306查找文件最多输出5行
-n可以设置显示输出的行数要设置多少行就是显示多少行文件
[rootlocalhost ~]# locate -n 5 test
/boot/grub2/i386-pc/cmdline_cat_test.mod
/boot/grub2/i386-pc/cmostest.mod
/boot/grub2/i386-pc/div_test.mod
/boot/grub2/i386-pc/exfctest.mod
/boot/grub2/i386-pc/functional_test.mod7匹配查找多个包含log或者txt的文件并显示行数
可以使用扩展正则进行匹配查找当然不使用正则也可直接以要查找的关键词进行查找文件
[rootlocalhost ~]# locate --regex (log|txt) -c
2660
[rootlocalhost ~]# locate log txt | wc -l
2660
8显示要查找的文件
使用-e参数其实与不使用-e参数的结果是一样的目的其实都是将结果打印显示。
[rootlocalhost ~]# locate -e samba -n 3
/etc/samba
/etc/logrotate.d/samba
/etc/samba/lmhosts9搜索指定目录下的文件并输出到文件里
[rootlocalhost ~]# locate -e /etc/init
/etc/init.d
/etc/inittab
[rootlocalhost ~]# locate -e /etc/init a.txt
[rootlocalhost ~]# cat a.txt
/etc/init.d
/etc/inittab命令总结 有时能常用到locate命令功能虽然没有find那么强大但满足基本的搜索查找还是一个很不错的命令还可配合正则进行匹配查找不管是在效率上还是查找的条件熟悉运用能提升不少找文件的水准若觉得以上内容还行的可以点赞支持一下