2016-08-18 34 views
-1

我在mpd文件中有一些行,如下所述。我只想grep只以.ts結尾的單詞並將它們保存在不同的文件中。有人可以幫助我嗎?字標記 grep匹配模式並保存到不同的文件

  • \w

    <SegmentURL media="1.ts" mediaRange="0-3424419"/> 
    <SegmentURL media="2.ts" mediaRange="0-8063319"/> 
    <SegmentURL media="3.ts" mediaRange="0-7146631"/> 
    <SegmentURL media="4.ts" mediaRange="0-8984143"/> 
    
  • 回答

    0
    $ grep -o '\<\w*\.ts\>' infile 
    1.ts 
    2.ts 
    3.ts 
    4.ts 
    
    • \<\>開始/結束是(在BSD的grep只是[[:alnum:]]),用於[_[:alnum:]]的同義詞
    • -o僅保留匹配

    將輸出保存到af ile output,重定向到> output附加到該命令。

    +0

    Thanx Benjamin現在工作 – Raj

    0

    例如,您不需要PCRE,BRE就足夠滿足您的需求。

    grep -o '[^"][.]ts' file 
    

    但請記住,grep是基於行的匹配。如果您的輸入文件是html/xml,特別是如果它是由某個應用程序生成的,那麼這些行可能會被破壞。因此,grep可能會失敗。

    如果是這種情況,請使用xml/html解析器。