是否可以将sed脚本的匹配部分之间的变量传递到我用来替换"更改"的文本中。命令c /?
:t
$!{
/OBJECT/,/\<End\>/ {
/\<End\>/!{
N;
bt
}
}
/Num\s*\(\-\?[0-9]\)\+\nID\s*\([0-9]\)\nName\s*Old Name~/ c\
OBJECT\
Num \1\
ID \2\
Name New Name~\
End
}
我用:
执行此文件sed -i -f name.sed OldNames.txt
原始文件中的数据格式为:
OBJECT
Num 0
ID 1
Name Name1
End
OBJECT
Num 1
ID 2
Name Name2
End
正则表达式匹配工作正常,但我想取变量\ 1和\ 2并在更改块中使用它们。现在我只是得到实际输出&#34; \ 1&#34;和&#34; \ 2&#34;在那里我使用了那些参考文献。