という名前のテキスト ファイルがありcompare.txt
、パターンを含む各行に続く 1 行を抽出したいと考えていますnmse_gain_constant
。次のコマンドでほぼ実行できます。
grep -A 1 nmse_gain_constant compare.txt | grep -v nmse_gain_constant
しかし、これには必要なテキストの各行の間に区切り線が含まれます。この線--
を取り除く簡単な方法はありますか?--
例: 次のような入力ファイルの場合
line
line
nmse_gain_constant matching line
line after first match
line
line
nmse_gain_constant another matching line
line after second match
line
nmse_gain_constant a third matching line
line after third match
出力は
line after first match
--
line after second match
--
line after third match
しかし、私はただ
line after first match
line after second match
line after third match
ベストアンサー1
私はこれをします:
grep ... | grep -v -- "^--$"
しかし、これも機能します (すべての OS ではなく、多くの OS で)。
grep --no-group-separator ...
そして、「--」や空白行も出力されません。