sql中locate函数,SQL locate

  sql中locate函数,SQL locate

  定位允许用户在文件系统中快速搜索指定的文件。方法是首先建立一个包括系统中所有文件的名称和路径的数据库,然后在搜索时只需要查询这个数据库,而不需要真正深入到文件系统中。在一般发行版中,数据库的建立是在crontab中自动执行的。

  1.命令格式定位[选择参数][样式]

  2.功能命令

  在搜索数据库时,定位命令可以快速找到文件。数据库由updatedb程序更新,updatedb由cron守护进程定期建立。locate命令搜索数据库的速度比搜索整个硬盘数据的速度快,但更糟糕的是,如果locate找到的文件是新建立或重命名的,可能就找不到了。默认值中,updatedb每天运行一次,可以通过修改crontab来更新设置值。(etc/crontab)

  Locate被指定用于搜索合格的文件。它将转到存储文件名和目录名的数据库,查找符合模板样式条件的文件或目录。您可以使用特殊字符(如“*”或“?”)等。)来指定模板样式。例如,如果模板是kcpaner,locate将查找所有以kcpa开始并以ner结尾的文件或目录。例如,如果目录名为kcpa_ner*,将列出目录中的所有文件,包括子目录。

  locate命令的作用类似于find查找文件,但locate是通过更新程序建立硬盘中所有文件和目录数据的索引数据库。执行loacte时,查询速度会更快。索引数据库通常由操作系统管理,但是您也可以直接发出update命令来强制系统立即修改索引数据库。

  3.命令参数-e-将从搜索范围中排除。

  -1.-如果是1。然后启动安全模式。在安全模式下,用户将看不到权限看不到的文件。这一开始会变慢,因为locate必须从实际的文件系统中获取文件的权限数据。

  -f-排除特定的文件系统,例如,将proc文件系统中的文件放在数据库中是不合理的。

  -q安静模式,不会显示错误消息。

  -n最多显示n个输出。

  -r使用正则表达式作为搜索条件。

  -o指定数据清单的名称。

  -d指定数据库的路径。

  -h显示辅助信息。

  -V显示程序的版本信息。

  注意:运行定位命令时,系统报告错误:定位:未找到命令。查了相关资料,发现原因是系统上没有这个可执行文件,需要安装。解决方案如下:

  执行命令:[root @ localhost ~]# yum install locate//查看locate属于哪个包。

  Find mlocate.x86 _ 64:通过名称执行查找文件的实用程序:[root @ localhost ~]# yum install m locate

  安装mlocate后,再次执行locate命令,不会报告错误。不,您也可以使用命令:

  Yum *定位到安装。执行updatedb以手动构建库。

  [root@localhost ~]# updatedb

  完成后,您可以执行locate。

  4.使用示例

  示例1:查找与pwd相关的所有文件

  命令:

  定位pwd

  执行和输出:

  [root@localhost yiibai]#定位密码

  /etc/.pwd.lock

  /usr/bin/pwd

  /usr/bin/pwdx

  /usr/lib/modules/3 . 10 . 0-514 . el7 . x86 _ 64/kernel/drivers/watchdog/hpwdt . ko

  /usr/lib64/cracklib_dict.pwd

  /usr/lib 64/python 2.7/lib-dyn load/spwd module . so

  /usr/sbin/unix_chkpwd

  /usr/share/cracklib/cracklib-small . pwd

  /usr/share/crack lib/pw _ dict . pwd

  /usr/share/man/man1/pwd.1.gz

  /usr/share/man/man1/pwdx.1.gz

  /usr/share/man/man 8/UNIX _ chk pwd . 8 . gz

  [root@localhost yiibai]#

  示例2:搜索etc目录中所有以sh开头的文件

  命令:

  定位/etc/sh

  执行和输出:

  [root @ localhost yiibai]# locate/etc/sh

  /etc/影子

  /etc/shadow-

  /etc/shell

  [root@localhost yiibai]#

  例3:搜索etc目录中所有以I开头的文件。

  命令:

  定位/etc/i

  执行和输出:

  [root @ localhost yiibai]# locate/etc/n

  /etc/networks

  /etc/nsswitch.conf

  /etc/nsswitch.conf.bak

  [root @ localhost yii Bai]# locate/etc/I

  /etc/初始化. d

  /etc/inittab

  /etc/inputrc

  /etc/IP路由2

  /etc/问题

  /etc/issue.net

  /etc/iproute2/ematch_map

  /etc/iproute2/group

  /etc/IP路由2/nl_protos

  /etc/IP路由2/rt_dsfield

  /etc/IP路由2/rt_protos

  /etc/IP路由2/rt _ realm

  /etc/IP路由2/rt _范围

  /etc/IP路由2/rt _表格

  [根@localhost yiibai]

  我要打赏

  纠错/补充

  收藏

  加问,问群啦,易百教程官方技术学习群

  注意:建议每个人选自己的技术方向加群,同一个问,问最多限加3个群。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: