📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
ページの作成:「== 概要 == <code>grep</code>コマンドとは、ファイル中の文字列に対して、正規表現を使って検索して表示するコマンドである。<br>…」 |
|||
| 33行目: | 33行目: | ||
例えば、testディレクトリ内の全てのファイルから大文字のAと小文字のaが区別なく検索するには、以下のようにする。<br> | 例えば、testディレクトリ内の全てのファイルから大文字のAと小文字のaが区別なく検索するには、以下のようにする。<br> | ||
grep –i a test/* | grep –i a test/* | ||
<br> | |||
===== -Eオプション : 拡張正規表現で検索を行う ===== | |||
2つの条件のOR検索を行うには、|のOR演算子を使用するが、そのためには拡張正規表現を使う必要がある。<br> | |||
その拡張席表現をするものが、<code>-E</code>オプションである。<br> | |||
grep –E <検索正規表現> <ファイル名> | |||
<br> | |||
例えば、testディレクトリ内の全てのファイルから、大文字のpまたはeのいずれかを検索するには、以下のようにする。<br> | |||
grep –E 'p|e' test/* | |||
<br> | |||
===== -eオプション : 一致処理に指定した正規表現 ===== | |||
<code>-e</code>オプションは、一致処理に指定した正規表現を行うオプションであるが、実際には、OR検索を行う時に使用する。<br> | |||
grep –e <検索正規表現1> –e <検索正規表現2> <ファイル名> | |||
<br> | |||
例えば、<code>-e</code>オプションを使用して、testディレクトリ内の全てのファイルから、大文字のpまたはeのいずれかを検索するには、以下のようにする。<br> | |||
grep –e p –e e work/* | |||
<br> | |||
===== -vオプション : 一致しないものを検索する ===== | |||
<code>-v</code>オプションは、一致しないものを検索する時に使用する。<br> | |||
grep –v <検索正規表現> <ファイル名> | |||
<br> | |||
例えば、testディレクトリ内の全てのファイルから、1の文字を含まないものを検索するには、以下のようにする。<br> | |||
grep -v 1 test/* | |||
<br> | |||
===== -nオプション : 検索結果に行番号を表示する ===== | |||
<code>-n</code>オプションは、検索結果に行番号を表示する。<br> | |||
grep –n <検索正規表現> <ファイル名> | |||
<br> | |||
例えば、testディレクトリ内の全てのファイルから、aを検索して結果を行番号と合わせて表示するには、以下のようにする。<br> | |||
grep -n a test/* | |||
<br> | |||
===== -lオプション : 検索結果にファイル名のみ表示する ===== | |||
<code>-l</code>オプションは、検索した結果にファイル名のみを表示したい時に使用する。<br> | |||
grep –l <検索正規表現> <ファイル名> | |||
<br> | |||
例えば、testディレクトリ内の全てのファイルから、aの文字を検索してファイル名を表示するには、以下のようにする。<br> | |||
grep -l a test/* | |||
<br> | |||
===== -hオプション : 検索結果にファイル名を表示しない ===== | |||
<code>-h</code>オプションは、検索した結果にファイル名を表示しない時に使用する。<br> | |||
grep –h <検索正規表現> <ファイル名> | |||
<br> | |||
例えば、testディレクトリ内の全てのファイルから、hの文字を検索してファイル名は表示しない場合は、以下のようにする。<br> | |||
grep -h a test/* | |||
<br> | |||
また、ファイル名を表示せずに行番号と該当内容のみ表示する場合は、<code>-n</code>オプションと<code>-h</code>オプションを組み合わせる。<br> | |||
例えば、testディレクトリ内の全てのファイルから、aの文字を検索して行番号とファイル名の表示をするには、以下のようにする。<br> | |||
grep -nh a test/* | |||
<br> | |||
===== -oオプション : 検索結果に一致した文字を表示する ===== | |||
<code>-o</code>オプションは、検索した時に該当したファイルを表示する。<br> | |||
grep –o <検索正規表現> <ファイル名> | |||
<br> | |||
例えば、testディレクトリ内の全てのファイルから、pで始まりeで終わる文字を検索して、該当の文字とともに表示する場合は、以下のようにする。<br> | |||
grep -o p.*e test/* | |||
<br> | |||
===== -Cオプション : 検索結果に一致した箇所から前後に指定した行数を表示する ===== | |||
<code>-C</code>オプションは、検索した結果に合わせて、前後に指定した行数を表示する。<br> | |||
grep –C <行数> <検索正規表現> <ファイル名> | |||
<br> | |||
例えば、testディレクトリ内の全てのファイルから、2の文字を検索して、あわせて、前後に行ずつ表示する場合は、以下のようにする。<br> | |||
grep -C 1 2 work/* | |||
<br> | |||
===== -rオプション : ディレクトリ内も検索対象とする ===== | |||
<code>-r</code>オプションは、ディレクトリ内を再帰検索する時に使用する。<br> | |||
grep –r <検索正規表現> <ファイル名> | |||
<br> | |||
例えば、testディレクトリ内にある下層のディレクトリも含めて全てのファイルから、aの文字を検索するには、以下のようにする。<br> | |||
grep -r a work/* | |||
<br> | |||
===== -Lオプション : 検索した結果、該当しなったファイルを表示する ===== | |||
<code>-L</code>オプションは、検索した結果、該当しなったファイルを表示する。<br> | |||
grep –L 検索正規表現 ファイル名 | |||
<br> | |||
例えば、testディレクトリ内の全てのファイルから、aを検索した結果、該当しなかったファイルを表示する場合は、以下のようにする。<br> | |||
grep -L a test/* | |||
<br><br> | <br><br> | ||
__FORCETOC__ | __FORCETOC__ | ||
[[カテゴリ:CentOS]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]] | [[カテゴリ:CentOS]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]] | ||