格式: grep [OPTIONS] PATTERN [FILE..]
OPTIONS:
--color==auto
-v 显示不被匹配到的行
-i 忽略大小写
-n 显示匹配的行号
-c 统计匹配的行数
-o 仅显示匹配到的字符串
-A #after 后n行
-B #before 前n行
-C #context 前后各#行
-e 实现多个选项的逻辑or关系 grep –e ‘cat ’ -e ‘dog’ file
-h 查询多文件时不显示文件名称。
-l 查询多文件时仅仅输出包括匹配字符的文件名称。
1.log文件内容:
2.txt文件内容:
1. 统计不包含"ios"和"android"的行数
grep -v "ios" 1.log | grep -v "android" | wc -l
2. 查找包含“ios”的行
grep -n --color=auto "ios" 1.log
以下为部分结果:
3. 统计包含“ios”或者 "android‘’ 的行
grep -n --color=auto -e 'ios' -e 'android' 1.log
4. 统计包含“ios”的行数
grep -c "ios" 1.log 或者 grep "ios" 1.log |wc -l
4. 统计2.txt中以大写字母结尾的行
grep -n '[A-Z]$' 2.txt
5. 统计 2.txt 中以数字开头的行 和该行前后各5行
grep -n -C 5 --color=auto '^[1-9]' 2.txt
7.在当前目录及其子目录下搜索‘test’行的文件
grep -r --color=auto 'test' *
8.在当前目录及其子目录下搜索‘test’行的文件,但是不显示匹配的行,只显示匹配的文件
grep -r -l 'test' *