简介
在linux下有grep家族
grep与egrep与fgrep
grep: 在文件中全局查找指定的正则表达式,并打印所有包含该表达式的行
egrep:扩展的egrep,支持更多的正则表达式元字符
fgrep:固定grep(fixed grep),有时被称作快速(fast grep),它按字面解释所有的字符
命令格式
grep [选项] PATTERN filename filename …
-
状态
找到: grep返回的退出状态为0
没找到: grep返回退出状态为1
找不到指定文件: grep 返回的退出状态为2 -
查询特定端口程序
ss -an |grep ':80'
grep使用的正则表达式是基本元字符,egrep能够使用扩展元字符(或grep -E)
grep中特有的元字符
\w : 所有的字母与数字,等同[a-zA-Z0-9]
\W : 所有字母与数字之外的字符,称为非字符 等同于[^a-zA-Z0-9]
\b : 词边界 ‘<love>‘等同’\blove\b’
参数
-q:静默查找
-v:反向查找
# 查询不以#开始的行
grep -v '^#' /etc/*.conf
# 查找grep的-v参数
grep --help |grep '\-v'
-i:忽略大小写
-R:深层次递归查找
–color:增加颜色
-o:不显示整行,只显示查找内容
-l:只列出匹配行所在的文件名
-n:在每一行前面加上它在文件中的相对行号