我正在尋找修剪文件,我需要在第二個匹配(以及第一個匹配之前的所有內容)後刪除所有內容。在第二個模式sed後刪除線
例如說我有這樣的文字:
xxx xxx
yyy yyy
New USB device found
xxx xxx
yyy yyy
zzz zzz
New USB device found
xxx xxx
yyy yyy
如果我用下面的命令sed
:
sed -i '1,/New USB device found/d' <FILE>
這消除了第一場比賽之前的一切。這是偉大的:
New USB device found
xxx xxx
yyy yyy
zzz zzz
New USB device found
xxx xxx
yyy yyy
但我只有1/2的方式存在,現在我想在第二節比賽後,除去一切得到這樣的結果:
New USB device found
xxx xxx
yyy yyy
zzz zzz
因此只爲數據第一個設備。
一個真正的低等級的方法是隻保留計數一個循環。 \t \t貓$ CHUNK \t \t回聲 「啓動」 \t \t C = 0 \t \t而讀艾琳;做 \t \t \t如果[ 「$(回聲$ {艾琳} | grep的 '新USB設備發現')」];然後 \t \t \t \t((C + = 1)) \t \t \t音響 \t \t \t [[$ c -lt 2]] && echo「out:$ aline」 \t \t done <$ {CHUNK} –