这就是我正在做的事(简化示例):
gsed -i -E 's/^(?!foo)(.*)$/bar\1/' file.txt
我试图把bar所有不以开头的行放在前面foo。这是错误:
bar
foo
gsed: -e expression #1, char 22: Invalid preceding regular expression
怎么了?
据我所知sed,既没有前瞻性,也没有落后。切换到具有类似语法的更强大的语言,例如perl。
sed
perl