我正在尝试替换文件内两个已知标签之间的多行文本块。它具有以下结构:
#STARTTAG
some text with numbers 123
and dots . that I want
to replace .
#ENDTAG
我一直在根据我在网上看到的内容尝试不同的方法,包括 sed、awk、perl,但我似乎无法使其工作。
例如,这就是我一直在尝试实现的:
sed -i '' 's/STARTTAG.*ENDTAG/alternative text/g' somefile
但它没有任何作用。我尝试向每个字符串(即标签和替换文本)添加 ' 和 ",但它什么也没做。我不确定我做错了什么。请注意,我希望文本和替代文本都被替换是多行的。
谢谢你
我会做什么:
sed '/STARTTAG/,/ENDTAG/{s/.*/alternative text/g;q}' file
产量:
alternative text