-1

我使用 sed 来操作一个 html 文件,以便我可以将它导入 wordpress 现在我有一个统一标签的问题,例如

`<Article> .... <ShortCut>... some text  <ShortCut> some more text ... </ShortCut>
<ShortCut> some more text ... </ShortCut></ShortCut> </Article>...`

结果应该是:

`<Article> .... <ShortCut>... some text  some more text ...  some more text ...  </ShortCut> 
</Article>...`

sed 有没有办法删除所有这些快捷方式标签,只留下标签文章之间的第一个和最后一个?

谢谢任何帮助!

更新:在输入文件中有不止一篇文章。因此我只能合并每个文章部分的快捷方式

4

1 回答 1

-1

使用awk

awk -F"</?ShortCut>" '{printf "%s <ShortCut>",$1; for (i=2;i<NF;i++) printf $i;print "</ShortCut> " $NF}' file
<Article> ....  <ShortCut>... some text   some more text ...  some more text ... </ShortCut>  </Article>...
于 2013-10-02T17:01:26.973 回答