使用sed进行就地反向引用

时间:2015-10-27 04:18:38

标签: linux sed backreference in-place

任何人都可以帮忙解释原因

sed -re 's/(e)\1{2,}/ee/g' filename

输出(根据需要)

Jeep

但是

sed -ire 's/(e)\1{2,}/ee/g' filename

给我

sed: -e expression #1, char 16: Invalid back reference

我试过摆弄并将逃生括号放在不同的地方,但我不确定现在该做什么。

1 个答案:

答案 0 :(得分:4)

由于-ire指定re作为-i的参数,而不是sed的选项。

-i指定为单独的个别选项可以正常工作。

sed -i -re 's/(e)\1{2,}/ee/g' file