逃避加号不起作用

时间:2013-05-08 12:35:56

标签: regex sed

我想删除所有带有3个加号的行:

+++ 3 plus signs
+ 1 plus sign
+++ 3 plus signs

这是我的sed命令,在行开头后转出加号

sed '/^\+\+\+/d'    -> This erase all lines
sed '/^+++/d'       -> This works and show only the 1 plus sign line

为什么呢?逃避加号时有什么问题吗?

1 个答案:

答案 0 :(得分:6)

“快速评论。原来的sed不支持”+“元字符。如果你使用”-r“命令行选项,GNU sed就会这样做,它启用扩展正则表达式。” < / p>

Source

如果您不使用sed -r,则不必转义+,因为它不被视为元字符。