使用 whereis/which/locate 查找文件

Posted czxbeyond

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用 whereis/which/locate 查找文件相关的知识,希望对你有一定的参考价值。

whereis命令

whereis只能用于搜索可执行文件 (-b) , 联机帮助文件 (-m) 和源代码文件 (-s) . 它只在一个数据库中查询(/var/lib/mlocate) .

这个数据库是Linux系统自动创建的 , 包含本地所有文件信息 , 并且每天通过自动执行 updatedb 命令更新一次 . 

如果查找的结果不准确 , 可以通过手动执行 updatedb 命令更新数据库 . 

1 whereis ls  
  • 命令参数
1 -b   定位可执行文件。
2 -m   定位帮助文件。
3 -s   定位源代码文件。
4 -u   搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
5 -B   指定搜索可执行文件的路径。
6 -M   指定搜索帮助文件的路径。
7 -S   指定搜索源代码文件的路径。

使用 -B -M -S 参数时 , 必须加上 -f 参数指定要搜索的文件名

只在 /bin 目录下搜索 ls

1 whereis -B /bin -f ls

locate 命令

locate 命令与 whereis 使用同样的数据库 , 但搜索结果更全面 . 

  • 常用参数
1 -b 查找路径中的文件名
2 -c 查询指定文件的数目
3 -n 最多显示n条结果
4 -r 使用正则表达式匹配
  • 实例
1 locate ls

这样会匹配到无论文件名还是路径中出现过 "ls" 的文件 , 如果要精确搜索 , 如下 : 

1 locate -b "ls"
2 locate -b -r ^ls$  #使用正则表达式:

搜索 /bin 目录下以 ls 开头的文件

1 locate /bin/ls

which 命令

which只在环境变量 $PATH 中指定的路径搜索 , 一般用来确认系统中是否安装了指定的软件 . 

确认是否安装 gcc

1 which gcc

以上是关于使用 whereis/which/locate 查找文件的主要内容,如果未能解决你的问题,请参考以下文章

Beego脱坑(十三)ORM基本增删改查

jqgrid怎么实现增删改查

使用JDBC实现CRUD(增删改查)

Go使用Gin+Redis实现增删改查

Python的列表类型操作——“增删改查”,元组——“查”

Go使用Gin+mysql实现增删改查