Bash Shell - 更改标记内的文本并删除标记内的所有内容

时间:2017-03-27 15:42:20

标签: html bash sed

我需要从html文件中删除/更改某些内容

从这一个我需要删除所有内容,从div标签的开始到/ div的结尾

<div id="footer" role="contentinfo">
    <section class="footer-body">
        <p>Document generated by Confluence on 2017/03/27 09:41</p>
            <div id="footer-logo">
                <a href="http://www.atlassian.com/">Atlassian</a></div>
    </section>
            </div>

这里我需要更改作者和编辑名称

Created by <span class='author'>John Smith</span>, last modified by <span class='editor'> John Smith</span> on 2017/03/24

我知道我需要使用sed,但我不知道如何创建所述表达式

1 个答案:

答案 0 :(得分:0)

关于第一项挑战,请更具体。

这是第二次挑战的sed脚本:

source="Created by <span class='author'>John Smith</span>, last modified by <span class='editor'> John Smith</span> on 2017/03/24"
author="new author"
editor="new editor"
result=`echo "$source" | sed "s/\(.*author'>\).*\(<\/span>,.*editor'>\).*\(<\/span.*\)/\1$author\2$editor\3/"`

echo $result