Linux grep命令
Linux grep命令 全拼:Global search REgular expression and Print out the line. 作用:文本搜索工具,根据用户指定的“模式(过滤条件)”对目标文本逐行进行匹配检查,打印匹配到的行. 模式:由正则表达式的元字符及文本字符所编写出的过滤条件﹔ grep的语法格式: grep -option(参数) ‘word’(关键词) file(文本文件); grep常用参数: –color=auto 或者 –color:表示对匹配到的文本着色显示 -i:在搜索的时候忽略大小写 -n:显示结果所在行号 -c:统计匹配到的行数,注意,是匹配到的总行数,不是匹配到的次数 -o:只显示符合条件的字符串,但是不整行显示,每个符合条件的字符串单独显示一行 -v:输出不带关键字的行(反向查询,反向匹配) -w:匹配整个单词,如果是字符串中包含这个单词,则不作匹配 -Ax:在输出的时候包含结果所在行之后的指定行数,这里指之后的x行,A:after -Bx:在输出的时候包含结果所在行之前的指定行数,这里指之前的x行,B:before -Cx:在输出的时候包含结果所在行之前和之后的指定行数,这里指之前和之后的x行,C:context -e:实现多个选项的匹配,逻辑or关系 -q:静默模式,不输出任何信息,当我们只关心有没有匹配到,却不关心匹配到什么内容时,我们可以使用此命令,然后,使用”echo $?”查看是否匹配到,0表示匹配到,1表示没有匹配到。 -P:表示使用兼容perl的正则引擎。 -E:使用扩展正则表达式,而不是基本正则表达式,在使用”-E”选项时,相当于使用egrep。 示例 # 从test.txt文本文件中搜索包含”L”字符的行 grep "L" test.txt # 输出以 I 开头的行(不区分大小写) grep "^i" test.txt -i -n -o # 可以使用”--color”选项,高亮显示行中的关键字 grep "L" test.txt -i -n --color # -B”选项,显示符合条件的行之前的行,"B"有before之意 grep "L" test.txt -i -n --color -B2 # "-A"有After之意,"-A"代表显示符合条件的行的同时,还要显示之后的行,"-A3"表示同时显示符合条件的行之后的3行。 grep "L" test....