unix - 将修改后的源文件复制到目标文件

时间:2013-10-14 04:02:58

标签: shell unix sed

我想更改源文件中的一些文本,并使用unix将其放入目标文件中。 使用sed我可以做

sed -i 's/FIND TEXT/REPLACE TEXT/g' source.txt

但这会替换同一文件中的文本。我想要像

这样的东西
sed -i 's/FIND TEXT/REPLACE TEXT/g' source.txt dest.txt

其中source.txt未修改,但dest.txt

中有更改

2 个答案:

答案 0 :(得分:2)

那么就不要就地做。

sed 's/FIND TEXT/REPLACE TEXT/g' source.txt > dest.txt

答案 1 :(得分:1)

awk

执行相同操作
awk '{gsub(/FIND TEXT1/,"REPLACE TEXT1");gsub(/FIND TEXT2/,"REPLACE TEXT2")}1' source.txt > dest.txt

gsub()替换所有找到的文字

替换完成后,

1会打印所有行。