Linux Tips

grepで該当する行の前後も一緒に表示するには

北浦訓行
2001/8/2

 grepは、デフォルトでは該当する行だけが表示される。これを、該当する行の前後の行も一緒に表示させるには「-」の後ろに表示したい行数を指定してgrepを実行する。例えば、該当行の前後3行を併せて表示する場合は、「-3」というオプションを指定する。

$ grep -n kitaura smb.conf
4:      workgroup = kitaura ←-nオプションを付けたので、4行目に該当する文字列があることが分かる
$ grep -3 -n kitaura smb.conf
1-[global]
2-      coding system = euc
3-      client code page = 932
4:      workgroup = kitaura ←-3オプションによって、前後各3行も表示される
5-      server string = Samba %v
6-      encrypt passwords = Yes
7-      map to guest = Bad User

 また、該当する行の後の行だけを表示したり、前の行だけを表示することもできる。後の行を表示するには-Aオプション、前の行を表示するには-Bオプションを使用し、併せて表示したい行数を指定する。

$ grep -A 3 -n kitaura smb.conf ←該当する行の後の3行を表示する
4:      workgroup = kitaura
5-      server string = Samba %v
6-      encrypt passwords = Yes
7-      map to guest = Bad User

$ grep -B 3 -n kitaura smb.conf ←該当する行の前の3行を表示する
1-[global]
2-      coding system = euc
3-      client code page = 932
4:      workgroup = kitaura

 また、-Aと-Bは、以下のように組み合わせて指定することもできる。

$ grep -A 3 -B 1 -n kitaura smb.conf ←該当する行の後3行と前1行を表示する
3-      client code page = 932
4:      workgroup = kitaura
5-      server string = Samba %v
6-      encrypt passwords = Yes
7-      map to guest = Bad User

 -Cオプションを指定すると、-2オプションを指定したのと同じ結果が得られる。

$ grep -C -n kitaura smb.conf
2-      coding system = euc
3-      client code page = 932
4:      workgroup = kitaura
5-      server string = Samba %v
6-      encrypt passwords = Yes

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間