grep 打印相关行内容

grep 打印相关行数
常用参数:

-r:关键字
-c:打印符合要求的行数
-i:忽略大小写
-n:输出行和行号
-v:打印不符合要求的行,即反选
-A:后跟数字(有无空格都可以),例如 -A3表示打印筛选行及前3行
-B:后跟数字,例如 -B3表示打印筛选行及后3行
-C:后跟数字,例如 -C3表示打印筛选行及前后各3行
-o:只打印符合要求的内容,而非整行
^ :表示行首
$ :表示行尾
^$:表示空行

查找所在的文件名

grep -i 1234567 files :不区分大小写地搜索。(默认情况区分大小写)
grep -l 1234567 files :只列出匹配的文件名
grep -L 1234567 files :列出不匹配的文件名
grep -w 1234567 files :只匹配整个单词,而不是模糊字符串的一部分
grep -C number 1234567 files :匹配的上下文分别显示[number]行

1、打印出空格行(显示 空行数)

grep -rn "^$" test.txt

2、筛选打印 (打印不包含a,但包含123的行)

grep '[^a]123' test.txt

3、打印以数字开头的行

grep '^[0-9]' text.txt 

4、打印以数字结尾的行

grep '[0-9]$' text.txt 

5、过滤任意一个字符与重复字符

. 表示任意一个字符
* 表示0或多个前面的字符
.*表示0或多个任意字符,空行也包含在内

grep  -rn 'r..t' test.txt

把符合r和t之间有2个任意字符的行打印出来

6、xargs配合grep查找

find -type f -name '*.txt'|xargs grep 'GroupRecord'

原文地址:https://www.cnblogs.com/sharesdk/p/9875614.html