文件及内容处理 - whereis、locate
1. whereis:查找二进制命令,按环境变量PATH路径查找
whereis命令的功能说明
whereis
命令用于查找文件。该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。该指令只能用于查找二进制文件、源代码文件和man
手册页,一般文件的定位需使用locate
命令。whereis命令的语法格式
whereis
[options] [-BMS directory... -f] name...whereis
[-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]whereis命令的常用参数说明:
whereis
参数不多,表1为whereis
命令的参数及说明:表1:
whereis
命令的参数及说明
参数选项 | 解释说明 |
---|---|
-b | 只查找二进制文件。 |
-B<目录> | 只在设置的目录下查找二进制文件。 |
-f | 不显示文件名前的路径名称。 |
-m | 只查找说明文件。 |
-M<目录> | 只在设置的目录下查找说明文件。 |
-s | 只查找原始代码文件。 |
-S<目录> | 只在设置的目录下查找原始代码文件。 |
-u | 查找不包含指定类型的文件。 |
whereis命令的实践操作
范例1: 使用指令
whereis
查看指令cp
的位置,输入如下命令
[root@m01 ~]# whereis cp
cp: /usr/bin/cp /usr/share/man/man1/cp.1.gz
注意:以上输出信息从左至右分别为查询的程序名、
cp
路径、cp
的man
手册页路径范例2: 单独查询二进制文件或帮助文件,可使用如下命令
[root@m01 ~]# whereis -b cp
cp: /usr/bin/cp
[root@m01 ~]# whereis -m cp
cp: /usr/share/man/man1/cp.1.gz
2. locate:标注从数据库 (/var/lib/mlocate/mlocate.db) 查找命令,使用updatedb更新库
locate命令的功能说明
locate
命令用于查找符合条件的文档,他会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录。一般情况我们只需要输入locate your_file_name
即可查找指定文件。CentOS 7已经没有此命令,需手动安装,方法为:yum install -y mlocate
locate命令的语法格式
locate
[--version]locate
[-d ][--help][--version][范本样式...]locate命令的常用参数说明:
locate
参数不多,表1为locate
命令的参数及说明:表1:
locate
命令的参数及说明
参数选项 | 解释说明 |
---|---|
-d或--database= | 配置locate指令使用的数据库。locate指令预设的数据库位于/var/lib/slocate目录里,文档名为slocate.db,您可使用 这个参数另行指定。 |
--help | 在线帮助。 |
--version | 显示版本信息。 |
locate命令的实践操作
范例1: 查找
passwd
文件,输入以下命令
locate passwd
附加说明
locate
与find
不同:find
是去硬盘找,locate
只在/var/lib/slocate
资料库中找。locate
的速度比find
快,它并不是真的查找,而是查数据库,一般文件数据库在/var/lib/slocate/slocate.db
中,所以locate
的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,也可以手工升级数据库 ,命令为locate -u
今天就写到这里,有什么疑问或出现什么错误,随时欢迎大神们发表评论指点迷津