ファイル内のテキスト文字列を見つけて、その後の残りのテキストのみを出力しますか?

ファイル内のテキスト文字列を見つけて、その後の残りのテキストのみを出力しますか?

このフォーラムでは、テキストファイルでさまざまな値を検索し、その周辺のテキストを出力することに関する記事をたくさん見つけました。しかし、私は「ストリーム志向」を見つけることができないようです。

ファイル内の特定の文字列を見つけて出力したいです。ただファイルの終わりに達するまで続くテキスト。つまり、特定の文字列値に達するまでファイル内のテキストを無視し、その時点でテキストを出力するフィルタなどが必要です。標準出力ファイルの最後まで。使いたい標準出力したがって、必要に応じて出力をファイルにパイプできます。

これを行うのに役立つLinuxテキストユーティリティはありますか?では、どうすればよいですか?または、これを行うためにbashシェルスクリプトを作成する必要がある場合は、これを実行するために使用する一般的な手順とコマンドラインユーティリティは何ですか?

たとえば、次のサンプルファイルが提供されます。

one
two
three
four
five

「3」以降のすべてのテキストを出力すると仮定すると、結果は次のようになります。

four
five

注:関連性があるように見えるこの記事を見つけましたが、ご覧のように少し混乱しています。

テキストを探してそのテキストをコピーする方法は?

ベストアンサー1

使用awk:

awk 's;/^three$/{s=1}' file

または

awk 's;$0=="three"{s=1}' file
  • s;変数がtrueの場合、行は印刷されますs。パターン/単語が見つかった後、初めてこれが発生します。
  • /^three$/{s=1}sパターン/単語が見つかると、変数はtrue(1)に設定されます。

おすすめ記事