文章目录
grep:全面搜索正则表达式,打印的是行
语法:grep 选项 模式 文件名 文件名
选项 意义
-c 只输出匹配行的的数量
-v 排除包含指定内容的行
-i 搜索时忽略大小写
-l 只列出文件名
-h 查询多文件时不显示文件名
-n 列出所有的匹配行,并显示行号
-s 不显示不存在,不匹配的错误信息
-w 匹配整词
-x 匹配整行
-r 递归搜索,搜索其下的子目录
-E 支持扩展正则
-F 不支持正则表达式,按照字符串的字面意思进行匹配
-P 支持perl的正则表达式
-o 仅显示匹配到的内容
POSIX字符类
[:alpha:] 表示大小写字面[a-zA-Z]
[:alnum:] 表示大小写字面和数字[0-9a-zA-Z]
[:space:] 表示空格或tab键
[:cntrl:] 表示ctrl键
实例
grep "\<word\>" #精确匹配单词word,相当于 grep -w word
grep '\<word\>'
grep ^[[:space:]] #搜索以空格,或者tab开头的行
grep "$1 i$" #匹配以"变量$1 i"为结尾的行
grep ^[^$] #匹配非空白行
grep -E "(:$|[^A-Za-z]$)"
grep -Ev "qemu|cupsd|api" #匹配不包含 qemu,或者cupsd,或者api的行
ip a | grep -Po '(?<=state ).*(?= group)' #匹配网卡的状态,匹配以第一个"state "之后到 最后一个"group"之间的一个或多个字符
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论