【发布时间】:2010-11-24 14:13:42
【问题描述】:
我有 2 个在其他地方生成的文件。第一个是“搜索什么”,第二个是替换。这两个文件都很大,每个大约 2-3mb。
我需要编写一个 bash 脚本,它需要一个更大的文件(大约 200-300mb)并将所有出现的 file1 内容替换为 file2 内容。
问题是,file1 和 file2 可以包含任何可能的字符,包括正则表达式特殊符号。
如何使用 sed 解决这个问题?
提前致谢。
【问题讨论】:
-
是否有特定原因必须为此使用 sed?
-
“要搜索的内容”文件是一个长模式还是一个模式列表与替换列表逐行对应(而不是一个长替换文本)?
-
Artelius:嗯,我无法将整个文件加载到内存中,如果有任何其他流替换工具,我会很高兴知道的。丹尼斯:这是 1 个大模式