一言でいうと

列単位の処理や集計が得意なテキスト処理コマンド。

より具体的には

awk は、空白や区切り文字で分割された入力を列ごとに扱いやすく、特定列の抽出、条件分岐、簡単な集計に向いている。
ログ解析やコマンド出力の整形で強い。

たとえば次の例では、ps aux の結果から「ユーザー名」「PID」「実行コマンド」の列だけを抜き出して表示している。

ps aux | awk '{print $1, $2, $11}'

よく使うオプション:

  • -F: 区切り文字を指定する
  • -v: awk 内で使う変数を外から渡す
  • -f: awk スクリプトファイルを読み込む

関連