(31)grep命令详解:查⽂件内容
grep命令能够在⼀个或多个⽂件中,搜索某⼀特定的字符模式(也就是正则表达式),此模式可以是单⼀的字符、字符串、单词或句⼦。
正则表达式是描述⼀组字符串的⼀个模式,正则表达式的构成模仿了数学表达式,通过使⽤操作符将较⼩的表达式组合成⼀个新的表达式。正则表达式可以是⼀些纯⽂本⽂字,也可以是⽤来产⽣模式的⼀些特殊字符。为了进⼀步定义⼀个搜索模式,grep 命令⽀持如表 1 所⽰的这⼏种正则表达式的元字符(也就是通配符)。
c* 将匹配 0 个(即空⽩)或多个字符 c(c 为任⼀字符)。
. 将匹配任何⼀个字符,且只能是⼀个字符。
[xyz] 匹配⽅括号中的任意⼀个字符。
[^xyz] 匹配除⽅括号中字符外的所有字符。
^ 锁定⾏的开头。
$ 锁定⾏的结尾。
需要注意的是,在基本正则表达式中,如通配符 *、+、{、|、( 和 )等,已经失去了它们原本的含义,⽽若要恢复它们原本的含义,则要在之前添加反斜杠\,如 \*、\+、\{、\|、\( 和 \)。
grep 命令是⽤来在每⼀个⽂件或中(或特定输出上)搜索特定的模式,当使⽤ grep 时,包含指定字符模式的每⼀⾏内容,都会被打印(显⽰)到屏幕上,但是使⽤ grep 命令并不改变⽂件中的内容。
grep 命令的基本格式如下:
[root@localhost ~]# grep [选项] 模式⽂件名
这⾥的模式,要么是字符(串),要么是正则表达式。
grep 命令常⽤选项及含义
-c 仅列出⽂件中包含模式的⾏数。
-i 忽略模式中的字母⼤⼩写。
-l 列出带有匹配⾏的⽂件名。
-n 在每⼀⾏的最前⾯列出⾏号。
正则表达式任意内容 -v 列出没有匹配模式的⾏。
-w 把表达式当做⼀个完整的单字符来搜寻,忽略那些部分匹配的⾏。
注意,如果是搜索多个⽂件,grep 命令的搜索结果只显⽰⽂件中发现匹配模式的⽂件名;⽽如果搜索单个⽂件,grep 命令的结果将显⽰每⼀个包含匹配模式的⾏。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论