7

我想删除所有带有 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

为什么?转义加号时有什么问题吗?

4

1 回答 1

8

“快速评论。原始 sed 不支持“+”元字符。如果您使用“-r”命令行选项,GNU sed 支持扩展正则表达式。

来源

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

于 2013-05-08T12:42:17.693 回答