2003 CNS GUIDE
copyright
 

13.4 文字列の検索 -- (grep)

あるファイルが指定の文字列を含んでいるか検索する場合には,grepコマンドを利用します.

grep [オプション] [キーワード] [ファイル名]

`t03000tf'という文字列をファイルから検索する例を 以下に示します.

% grep t03000tf file1 <ENTER>           ← `file1'というファイルから検索する
From: "Fujisawa Taro" <t03000tf@sfc.keio.ac.jp>
Cc: "Fujisawa Taro" <t03000tf@sfc.keio.ac.jp>
% grep t03000tf file1 file2 file3 <ENTER> ← `file1',`file2',`file3'から検索する
file1:From: "Fujisawa Taro" <t03000tf@sfc.keio.ac.jp>
file1:Cc: "Fujisawa Taro" <t03000tf@sfc.keio.ac.jp>
file2:Reply-To: t03000tf@sfc.keio.ac.jp
file3:   t03000tf@sfc.keio.ac.jp
file3:X-ML-Name: t03000tf
% grep t03000tf Mail/inbox/* <ENTER> ← ワイルドカードを用いて複数のファイルをから検索できる
Mail/inbox/103:To: t03000tf@sfc.keio.ac.jp
Mail/inbox/105:To: s03000hf@sfc.keio.ac.jp, t03000tf@sfc.keio.ac.jp
Mail/inbox/108:Cc: t03000tf@sfc.keio.ac.jp
% _

13.4.1 マッチした文字の行番号を表示する

grepコマンドに`-n'オプションを用いると マッチした文字が何行目にあるか表示できます.

grep -n [キーワード] [ファイル名]
% cat file <ENTER>         ← ファイルの中身をcatコマンドで確認
This is a test file. 
written by fujisawa taro. 

==Shonan Fujisawa Campus== 
% grep -n fujisawa file <ENTER>  
2:written by fujisawa taro. ← マッチした文字が何行目にあるか表示する
% _

13.4.2 大文字・小文字を区別しないで検索する

grepコマンドに`-i'オプションを用いると 大文字,小文字を区別せずに検索できます.

grep -i [キーワード] [ファイル名]
% cat file <ENTER> ← ファイルの中身をcatコマンドで確認
This is a test file. 
written by fujisawa taro. 

==Shonan Fujisawa Campus== 
% grep fujisawa file <ENTER> ← 普通の{grepでは大文字,小文字を区別する}
written by fujisawa taro. 
% grep -i fujisawa file <ENTER> ← -i オプションをつけると区別しない
written by fujisawa taro. 
==Shonan Fujisawa Campus== 
% _