如何 grep 以字母结尾的行a or d
,后跟xy
我知道使用 $ 你可以检查结尾,但不确定如何组合它
并使用或条件
答案1
一些命令可以匹配以axy
或结尾的行dxy
:
# pick one
grep 'axy$\|dxy$'
grep -E 'axy$|dxy$'
grep '\(a\|d\)xy$'
grep -E '(a|d)xy$'
- 您说得对
$
,它与行尾相匹配。 |
\
是“或”。在 BRE(基本正则表达式)中,您需要用 对其进行转义;如果不转义,则该字符为文字。在 ERE(扩展正则表达式,grep -E
)中则相反:未转义时为“或”,转义时为文字。(
和)
表示一组,这里我用它们来限制 的范围|
。同样,在 BRE 中需要转义,在 ERE 中则不能转义。