我有一个文件base_foo.txt,想要替换base_file中的一些文本并将其存储在另一个文件中而不改变基本文件。谢谢!
类似的东西:
sed -i -e 'r/foo/bar/' base_foo.txt ???
答案 0 :(得分:0)
如果您不想修改onriginal文件,则必须删除-i
标志。如果没有-i
sed
,则会将其输出发送到stdout
,因此您可以将其重定向到文件。做这样的事情:
sed -e 'r/foo/bar/' base_foo.txt > new_file.txt
答案 1 :(得分:0)
-i
已在sed中替换。所以它使用的原始文件将被修改。
要显示更改,请使用:
sed -e 's/foo/bar/g' file #Only to stdout
将更改重定向到新文件:
sed -e 's/foo/bar/g' file > new.file # changes would be only in new.file
更改orignal保留备份
sed -i.bak -e 's/foo/bar/g' file #Changes in file ,no change in file.bak