#!/usr/local/bin/gawk -f { for (i = 1; i <= NF; i++) { word[$i]++ } } END { for (i in word) { print i, word[i] } }
{ for (i = 1; i <= NF; i++) { word[$i]++ } }の部分で,読み込んだ1行ごとに空白で区切られた単語それ自体を添字として,配列 word に出現回数をカウントアップしている(word[$i]++)。
END { for (i in word) { print i, word[i] } }の部分で,word に含まれる添字とその内容(出現回数)をプリントしている。
● 実行してみる
結果を見るとわかるように,アルファベット順にはなっていないが集計はできている。
● ちょっと脇道へ