weblog of key_amb

主にIT関連の技術メモ

AWKによるテキストファイルのワンライナー処理

AWK によるテキストのワンライナー処理クックブック集 - Qiita に引越しました。


最近よく使うようになったawkについて。
ワンライナーのTipsをまとめる。

※2015/5/7 追記: AWK によるテキストのワンライナー処理クックブック集 - Qiita に移行予定。

オプション

オプション 意味
-Fhoge "hoge"で入力を区切る
特定のフィールドを抜き出す
$ awk '{print $9}' access_log # HTTPステータスだけを抜き出す
200
200
404
:
$ awk -F, '{print $1,$2}' sample.csv # CSVデータの1,2列目を抜き出す
平均値を求める

sample.datの4つめのフィールドに値が入っているとする。

$ awk '{sum += $4} END {print sum/NR}' sample.dat
最大値を求める

同様に、

$ awk '{if (max<$4) max=$4} END {print max}' sample.dat