我有一个file1.html:
<!doctype html>
<html>
<head>
</head>
<body>
text
<!-- start-replacing -->
<p>more text1</p>
<p>more text2</p>
<!-- end-replacing -->
other text
</body>
</html>
和一个file2.txt
<p>some text</p>
<div>some other text</div>
现在我正在寻找一个命令来替换之间的所有内容
<!-- start-replacing -->
和<!-- end-replacing -->
包含 file2.txt 的内容
output.html应该是:
<!doctype html>
<html>
<head>
</head>
<body>
text
<!-- start-replacing -->
<p>some text</p>
<div>some other text</div>
<!-- end-replacing -->
other text
</body>
</html>
与
perl
:使用
sed
与
GNU sed
:该
e
命令用于cat file2.txt
在结束地址范围上调用外部命令。文件内容将被插入到匹配行之前。然后删除地址范围之间的行。
//
表示最后使用的正则表达式(逗号后的结束范围和块内的两个地址{}
)。