LoginSignup
2
2

More than 5 years have passed since last update.

grep メモ

Last updated at Posted at 2016-09-18

カッコイイgrep

$grep --color=always -nriC1 "arg" ./*

現在ディレクトリ以下で大文字小文字区別なしに"arg"という文字をを含む行の前後1行を表示。
以下解説。

マッチした行の前後を表示

-C オプションで表示する行数を指定する。
または -A オプションと -B オプションで指定する。
Aはマッチした行とその後(After)3行、Bは前(Before)3行を表示

$grep -C3 blahbla foo.txt

大文字小文字区別

-i オプションを付けると大文字小文字区別せずに検索してくれる。

$grep -i PATTERN foo.txt

色付き表示

--color を付けるとパターンにマッチした部分を色付きで表示してくれる。

grep の出力をパイプで他のコマンドにつなげたときには --color でも色付きにしてくれないので、 --color=always と書く。

$ grep --color PATTERN foo.txt
$ grep --color=always PATTERN foo.txt | head

サブディレクトリも含めて検索

$grep -r 検索文字列 ディレクトリ

ディレクトリ以下、全てのファイルを検索して、ファイルの一覧を出したいときは、こんな感じ。

$grep -ilr xxx ./

オプションの説明まとめ

-i : 大文字小文字関係無し

-l : ファイル名のみ表示

-r : 指定したディレクトリ以下を対象

ディレクトリ名をワイルドカードにすることで、ディレクトリを再帰的にたどって検索する。

-n : 検索結果の出力に行番号をつける

-Cnum : 表示する行数を指定

--color : パターンにマッチした部分を色付き表示

参考

grepでファイル内を検索しよう
linux サブディレクトリ配下のファイルをgrepする
hydroculのメモ > コマンドの使い方(Linux) > grep コマンド

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2