Linux教程

Linux学习-(4)搜索查找类实用指令

本文主要是介绍Linux学习-(4)搜索查找类实用指令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一:find指令

功能描述:从指定目录向下递归所有子目录,查找指定内容

基本语法:find [搜索范围] [选项] 查找内容

常用选项:     -name:按照文件名查找     -size :+/-大小 按照文件大小查找,+大于,-小于     -user: 按照指定用户名查找,     -type 按照文件类型查找     -group 根据文件所属组查找   实例1:按文件名在/home目录下查找b.txt文件 : find /home -name b.txt     实例2:按照文件大小查找整个系统大于30M的文件: find / -size +30M   实例3:按照用户名查找/opt下用户名称是lrc 的文件:find /home/lrc -user lrc   二:locate指令 功能描述:快速定位文件路径。利用事先建立的所有文件名称和路径的locate数据库实现快速定位指定的文件。locate无需遍历整个文件系统,查找速度较快。 基本语法:locate 查找内容 特别说明:loacte指令基于数据库进行查询,所以在第一次执行该指令前,必须使用updatedb指令创建locate数据库 实例1:快速定位b.txt文件 :locate b.txt       find指令和locate指令的区别: find:直接搜索整个文件目录,默认直接从当前目录开始搜索,功能最强大,但是速度慢。 locate:超快速查找任意文件,从linux内置索引数据库查找文件路径,速度快。刚刚新建的文件可能需要一定时间才能加入索引数据库,可以通过updatedb命令更新索引,确保不会遗漏文件     三、which指令 功能描述:在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。查找范围只在$PATH中,范围小,速度快。默认只返回第一个匹配的文件路径,可以通过选项-a返回所有匹配路径 基本语法:which 系统命令 实例1:查找pwd的文件路径: which pwd   实例2:使用which查找which: which which 这里有两个 which ,其中一个是 alias 即『命令别名』,意思是输入 which 会等於后面接的那串命令!   实例3:使用which查找history:which history history 这个常用的命令竟然找不到啊!为什么呢?这是因为history是bash内建的命令,而which默认是找PATH内所规范的目录,所以当然一定找不到的!     四:whereis指令 功能描述:定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。whereis 程序还具有搜索源代码、指定备用搜索路径和搜索不寻常项的能力。 基本语法:whereis [选项] 查找内容 常用选项:

-b   定位可执行文件。

-m   定位帮助文件。

-s   定位源代码文件。

-u   搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。

-B   指定搜索可执行文件的路径。

-M   指定搜索帮助文件的路径。

-S   指定搜索源代码文件的路径。

 

实例1:查找pwd :whereis pwd

 

实例2:只查找pwd的二进制文件:whereis -b pwd

  which和whereis的区别 which:常用于查找可直接执行的命令,只能查找可执行文件,查找范围只在$PATH中,范围小,速度快。默认只返回第一个匹配的文件路径,可以通过选项-a返回所有匹配路径 whereis:不仅可以查找命令,还可以查找其他文件类型,查找范围只在$PATH中,查找范围比which大,速度快   五:grep指令和管道符指令 功能描述:grep用于过滤查找,管道符"|"表示将前一个命令的处理结果传递给后面的指令的输入 基本语法:(其他常用命令如cat、tail等)| grep  [选项] 查找内容 常用选项:-n:显示匹配行及行号 -i:忽略字母大小写 实例1:实时查找/etc/profile文件末尾100行含有b的行信息:tail -fn 100 /etc/profile | grep -n b   实例2:实时查找/etc/profile文件末尾100行含有b的行信息,忽略大小写:tail -fn 100 /etc/profile | grep -ni b  
这篇关于Linux学习-(4)搜索查找类实用指令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!