実務で頻出する「テキスト処理」関連の用語を、一言定義+最小実例でサッと確認。
ログ解析や設定ファイル編集など、日常的に行うテキスト操作の基本ツールを整理します。
このページで達成できること
- grep・sed・awk など定番ツールの役割を理解
- 正規表現による検索・抽出を活用
- テキストの整形・置換・集計を効率的に実行
- 実務での落とし穴(マッチ過剰・ロケール依存など)を回避
すぐ引けるミニ索引
| 用語 | 一言で | 代表コマンド/例 |
|---|---|---|
| grep | パターン検索 | grep error log.txt |
| egrep / grep -E | 拡張正規表現検索 | `grep -E “foo |
| fgrep / grep -F | 文字列リテラル検索 | grep -F "http://" |
| sed | 置換・編集フィルタ | sed 's/foo/bar/g' file |
| awk | テキスト処理言語 | awk '{print $1,$3}' file |
| cut | 区切りで列抽出 | cut -d: -f1 /etc/passwd |
| sort | 並べ替え | sort -n file |
| uniq | 重複行の整理 | uniq -c file |
| tr | 文字単位の変換 | tr a-z A-Z |
| wc | 行数・単語数・バイト数集計 | wc -l file |
| head / tail | 先頭・末尾の抜粋 | head -n 10 file |
| less / more | ページャ | less file |
用語解説(繰り返しブロック)
grep
とは:パターン検索コマンド。正規表現を使って行単位で抽出。
最小実例
grep error /var/log/syslog
関連:egrep / fgrep / 正規表現
落とし穴:大文字小文字を区別 → -i オプションで無視。
sed
とは:ストリームエディタ。置換・削除・挿入などをフィルタとして実行。
最小実例
sed 's/foo/bar/g' input.txt > output.txt
関連:正規表現 / パイプ
落とし穴:-i で直接書き換えると元ファイルが失われる。
awk
とは:テキストを列(フィールド)単位で処理するプログラミング言語。
最小実例
awk '{print $1, $3}' access.log
関連:cut / sort / uniq
落とし穴:デリミタはスペースだけでなく -F オプションで指定可能。
cut
とは:テキストを区切り文字やバイト単位で分割し、特定の列を抽出。
最小実例
cut -d: -f1 /etc/passwd
関連:awk / sort
落とし穴:区切り文字が複数連続する場合に意図通り動かないことがある。
sort
とは:行単位で並べ替えるコマンド。
最小実例
sort -n numbers.txt
関連:uniq / awk
落とし穴:文字コード順になるため、数値は -n を指定。
uniq
とは:隣接する重複行をまとめる。-c で出現回数も表示。
最小実例
sort file.txt | uniq -c
関連:sort / awk
落とし穴:ソートされていないと期待通りに動作しない。
tr
とは:文字単位の変換や削除を行う。
最小実例
echo hello | tr a-z A-Z
関連:sed / パイプ
落とし穴:正規表現ではなく文字集合変換。
wc
とは:行数・単語数・バイト数を集計。
最小実例
wc -l access.log
関連:ログ解析 / head / tail
落とし穴:ロケール依存で文字数カウントが異なることがある。
head / tail
とは:ファイルの先頭や末尾を表示。ログやデータ確認に必須。
最小実例
head -n 20 file
tail -f /var/log/syslog
関連:less / more
落とし穴:tail -f は終了しないので注意。
less / more
とは:ページャでファイルを閲覧。less は前後移動可能。
最小実例
less /etc/passwd
関連:head / tail
落とし穴:大容量ファイルを開くときはリソースに注意。
運用の現場Tips
- grep + awk の組み合わせでログ解析効率化
- sort | uniq -c でランキングや集計が可能
- sed -i は危険 → バックアップ付き
-i.bak推奨 - 正規表現の活用:単純検索は fgrep、複雑なマッチは grep -E

