使用sed命令替换line,但不匹配匹配的模式

时间:2013-07-03 10:29:20

标签: linux unix sed

我知道替换命令

sed -i 's/First/Second/' testFile

将字符串“First”替换为“Second”。

但如下所示输入

Infile.txt

  

首先“此行将被删除。”

我希望输出如下:

Outfile.txt

  

首先“要添加的新字符串。”

即。不应该替换“第一”。

如何实现所需的输出?

1 个答案:

答案 0 :(得分:2)

您可以specify the address替换命令:

sed -i '/First/s/This line is to be deleted/New string to be added/' testFile

编辑:对于可变模式字符串:

sed -i 's/First \(.*\)/First "New string to be added"/' testFile