GNU/Linux >> Linux の 問題 >  >> Linux

grep を使用して逆方向に検索する

大きなテキスト ファイルがあり、特定の情報を探している場合や、何かが出現するたびに検索したい場合を想像してください。私にとって、これは日常的な出来事であり、問​​題を解決しようとするときにシステム ログを調べます。これにより、grep コマンドが表示されます。

入力内の文字列またはパターンを検索するために使用される grep は、常にファイルの先頭から検索を開始します。しかし、最後の行の後ろから検索を開始したい場合は、grep を tac と組み合わせて使用​​できます。

tac は、ファイルの内容を最終行から最初の行まで表示します。これを grep にパイプすると、逆方向に検索できます。たとえば、test_file という名前のファイルがあるとします。

# cat test_file
Linux was created in 1991
It is a very robust and flexible OS.
It follows POSIX standards
There a huge number of distros in linux.

文字列 distros を検索したい場合 これは最後に使用できます:

tac test_file | grep distros

grep reverse:「grep」検索の意味を逆にする方法

grep を逆にすることは、検索語を含む行を単純に除外することを意味します。これを行うには、grep コマンドで「-v」スイッチを使用します。例:

$ grep -v "exclude text" filename

grep コマンド オプションの詳細については、grep の man ページを参照してください。

$ man grep


Linux
  1. Sed、Awk、またはGrepを使用したマルチラインパターンマッチ?

  2. Grepを使用して発生の総数をカウントしますか?

  3. Grepを使用して行の最後のアイテムを検索しますか?

  1. phpMyAdminを使用してデータベースを検索する方法

  2. Linuxでのripgrep(rg)コマンドの使用

  3. 複数行検索用の正規表現 (grep) が必要

  1. ls と grep を使用して実行可能ファイルを見つける

  2. grep を使用してドットを含む文字列を検索する

  3. インデックスを使用してgrepを高速化しますか?