我有一個類似於Bash, grep between two lines with specified string的情況。我有以下格式的輸出的文本文件:過濾文本文件的行
HEADER A
lines of output
----------------
HEADER B
lines of output
----------------
...rinse and repeat...
我想匹配具有相同標頭的所有塊。 grep
似乎不足以完成此任務。我只是模糊地熟悉awk
和sed
。足以認識到他們可能是這裏最合適的工具。那麼如何匹配一個由匹配的HEADER和----------行封閉的塊呢?
我的基於鏈接的問題,嘗試
awk '/HEADER/{f=1} /-/{f=0;print} f' filename.txt
然而,這仍然符合一些與第二集塊線。
也許你需要擴大你的輸入文件,並告訴你如何得到錯誤的輸出...... –
@GeorgeVasiliou剛編輯顯示更清楚的文件格式。 –
爲什麼不'awk'/ HEADER A/{f = 1}/-------/{f = 0; print} f'file.txt' ...? –