壳牌|删除重复的行

时间:2016-03-17 11:07:58

标签: xml bash shell sh

我需要编写一个Bash脚本来从输出文件中删除类似的行。 我的输出文件总是一样的。

第1行和第1行2应保留,其他类似于这两行的行需要删除。

1:  </UsageData><?xml version="1.0" encoding="UTF-8"?>
2:  <UsageData broadcastday="2016-03-16">

日期各不相同。

应该保留最后一行。 E.g。

</UsageData>

我是shell编程的新手,我无法弄清楚如何做到这一点。

以下是我的示例XML:

<?xml version="1.0" encoding="UTF-8"?> 
<UsageData broadcastday="2016-03-16"> 
    <Hh hhID="48800301"> 
        <Inst instID="000002B9"/> 
        <Live> 
            <Station>516</Station> 
            <From>Wed Mar 16 2016 09:52:47 GMT+0000 (UTC)</From> 
            <DurSec>58077</DurSec> 
            <Viewer> 
                <HhMem>569de65c9c3ab0cf7bfa2df2</HhMem> 
            </Viewer> 
        </Live> 
    </Hh> 
    <Hh hhID="46920403"> 
        <Inst instID="000002A8"/> 
        <Live> 
            <Station>5000</Station> 
            <From>Wed Mar 16 2016 12:42:17 GMT+0000 (UTC)</From> 
            <DurSec>47908</DurSec> 
            <Viewer> 
                <HhMem>56caee95f915e09335fd976f</HhMem> 
            </Viewer> 
        </Live> 
    </Hh> 
</UsageData><?xml version="1.0" encoding="UTF-8"?> 
<UsageData broadcastday="2016-03-16"> 
    <Hh hhID="15260304"> 
        <Inst instID="000000A5"/> 
        <Live> 
            <Station>5000</Station> 
            <From>Wed Mar 16 2016 12:57:48 GMT+0000 (UTC)</From> 
            <DurSec>28814</DurSec> 
            <Viewer> 
                <HhMem>565f181dd830d3cc7057c0b9</HhMem> 
            </Viewer> 
        </Live> 
    </Hh> 
</UsageData><?xml version="1.0" encoding="UTF-8"?> 
<UsageData broadcastday="2016-03-16"> 
    <Hh hhID="50100501"> 
        <Inst instID="0000022D"/> 
        <Live> 
            <Station>560</Station> 
            <From>Wed Mar 16 2016 14:21:19 GMT+0000 (UTC)</From> 
            <DurSec>41967</DurSec> 
            <Viewer> 
                <HhMem>56c4412de6a8ff4da18fd4ae</HhMem> 
                <HhMem>56c4412de6a8ff4da18fd4cb</HhMem> 
            </Viewer> 
        </Live> 
    </Hh> 
</UsageData><?xml version="1.0" encoding="UTF-8"?> 
<UsageData broadcastday="2016-03-16"> 
    <Hh hhID="36110404"> 
        <Inst instID="00000104"/> 
        <Live> 
            <Station>545</Station> 
            <From>Wed Mar 16 2016 15:01:04 GMT+0000 (UTC)</From> 
            <DurSec>671</DurSec> 
            <Viewer> 
                <HhMem>568ce8acbd0e486a951d41ce</HhMem> 
                <HhMem>568ce8acbd0e486a951d41dc</HhMem> 
                <HhMem>568ce8acbd0e486a951d41c5</HhMem> 
            </Viewer> 
        </Live> 
    </Hh> 
</UsageData>

1 个答案:

答案 0 :(得分:0)

我用非常简单的方法解决了我的问题。

  

awk&#39; /&lt; / UsageData&gt;&lt; \?xml version =&#34; 1.0&#34;编码=&#34; UTF-8&#34; \&GT; /   {函数getline;下一个} 1&#39;文件