1

想象一下,我有一个文件具有以下类型的行:

FIXED_DATA1 VARIABLE_DATA FIXED_DATA2

我想更改固定数据并保持可变数据不变。由于各种原因,使用两次sed操作替换固定数据是行不通的。例如,固定字段可能是双引号,并且该行具有包含它们的其他区域,因此编写正则表达式实际上是为了匹配可变数据和固定数据中的模式。

如果我一心想要使用 sed,有没有办法一次更改两个固定数据字段,同时保持可变字段不变?

谢谢。

4

1 回答 1

4

您需要将线分成三部分,替换外面的两部分并留下中间部分:

sed 's/^FIX1 \(.*\) FIX2$/New \1 End/'

您可以根据需要使开始匹配和结束匹配更复杂。

于 2011-07-19T15:20:41.943 回答