[英]Unix grep regex how to grep for
我有一个文本文件
$ cat test.log
SYB-01001
SYB-18913
SYB-02445
SYB-21356
我想gre 01 01和18913只是为了做到这一点
我想要输出
SYB-01001
SYB-18913
SYB-02445
我试过这个,但不确定它有什么问题
grep 'SYB-(18913)|0*)' test.log
对grep使用“扩展正则表达式”的-E
标志。
例如
grep -E 'SYB-(0|18913)' test.log
其他需要注意的事项:
0*
表示零个或多个0
字符 - 实际上这将匹配所有内容 试试看:
grep 'SYB-\(18913\|0*\)' test.log
但是你可能不希望0*
部分这样做。 也许0+
更好。
AWK
awk '/SYB-(0|18913)/' file
你的括号出来了。 尝试
grep 'SYB-[18913|0*]' test.log
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.