$ echo " <mta abc='1' def='2'>" | sed -r 's/.*\(mta\).*/\1def/g'
sed: -e expression #1, char 21: invalid reference \1 on `s' command's RHS
$ echo " <mta abc='1' def='2'>" | sed 's/.*\(mta\).*/\1def/g'
mtadef
##有没有一种方法可以使\ 1和-r选项在sed中一起工作
答案 0 :(得分:0)
使用ERE(扩展正则表达式),您不会逃脱括号,因此可以使用:
echo " <mta abc='1' def='2'>" | sed -r 's/.*(mta).*/\1def/g'
mtadef