多くの有用なawk
プログラムは短く、一行か二行のものである。ここに集
めたのはそういった、便利で短いプログラムである。これらのプログラムのうち
の幾つかは、まだ説明していない機能を使っている。プログラムの説明は何かを
するための良いアイデアをあなたにもたらすだろうが、どうかこの
マニュアルの残りを読んで欲しい。あなたがawk
のエキスパートと
なるために!
例の大部分は`data'という名前のデータファイルを使用している。これは 単なるプレースホルダー(placeholder)である。これらのプログラムを使う 場合、`data'を好きな名前に置き換えることができる。
awk '{ if (length($0) > max) max = length($0) }
END { print max }' data
awk 'length($0) > 80' data
expand data | awk '{ if (x < length()) x = length() }
END { print "maximum line length is " x }'
expand
プログラムによってタブをスペースに展開される。
awk 'NF > 0' data
awk 'BEGIN { for (i = 1; i <= 7; i++)
print int(101 * rand()) }'
ls -lg files | awk '{ x += $5 } ; END { print "total bytes: " x }'
ls -lg files | awk '{ x += $5 }
END { print "total K-bytes: " (x + 1023)/1024 }'
awk -F: '{ print $1 }' /etc/passwd | sort
awk 'END { print NR }' data
awk 'NR % 2 == 0' data