テキスト処理
grep
ファイルやテキストからパターンに一致する行を検索するコマンド
SYNTAX
grep [options] pattern [file...] 主なオプション
| オプション | 説明 |
|---|---|
-i | 大文字小文字を区別しない |
-r | ディレクトリを再帰的に検索 |
-n | 行番号を表示 |
-v | 一致しない行を表示(反転マッチ) |
-l | 一致したファイル名のみ表示 |
-c | 一致した行数を表示 |
-E | 拡張正規表現を使用(egrep相当) |
--color | マッチ箇所をカラー表示 |
使用例
# ファイルから "error" を含む行を検索
grep "error" logfile.txt
# 再帰的に検索(サブディレクトリも含む)
grep -r "TODO" ./src/
# 大文字小文字を無視して検索
grep -i "warning" app.log
# 行番号付きで検索
grep -n "function" script.sh
# パターンに一致しない行を表示
grep -v "^#" config.txt
# 複数パターンのいずれかにマッチ(拡張正規表現)
grep -E "error|warning|critical" syslog
# パイプと組み合わせる
ps aux | grep nginx
正規表現の基本
| パターン | 説明 |
|---|---|
. | 任意の1文字 |
^ | 行頭 |
$ | 行末 |
* | 直前の文字の0回以上の繰り返し |
[abc] | a、b、cのいずれか1文字 |
[^abc] | a、b、c以外の1文字 |