一致後にファイルの最後まですべての行を印刷するには?

一致後にファイルの最後まですべての行を印刷するには?

入力ファイル1は次のようになります。

dog 123 4335
cat 13123 23424 
deer 2131 213132
bear 2313 21313

一致のパターンother filedog 123 4335file2のパターンに似ています)を提供します。

行のパターンを一致させ、dog 123 4335一致する行がないすべての行を印刷した後、出力は次のようになります。

cat 13123 23424
deer 2131 213132
bear 2313 21313

アドレスなしでパターンのみを使用する場合は、行を一致さ1s せて印刷する方法は?

ベストアンサー1

実際には、次のものを使用できます。Aet3miirahの答えほとんどの時間とアレクセイの答えラインナビゲーションに適しています(また、一緒に使用することができますless)。 OTOH、私は他のアプローチが大好きです(その逆です)。ザイルズの答え):

sed -n '/dog 123 4335/,$p'

この-nフラグを使用して呼び出すと、sed処理する行はデフォルトで印刷されなくなります。次に、2 アドレス形式を使用します。これは、一致する行から始まり、/dog 123 4335/ファイルの終わりまで(とマーク)コマンドを適用することを意味します$。問題のコマンドは、p現在行を印刷することです。したがって、これは「一致する行から/dog 123 4335/最後まですべての行を印刷する」ことを意味します。

おすすめ記事