ある程度スクリプトの内容が熟れてきたら、
awkスクリプトの単独実行を検討してみるのもいいでしょう。
実際のところ
標準出力から数字列を受け取り、fizzbuzzの個数を受け取る以下のようなスクリプトがあったとします。
BEGIN { count = 0 } $1 % 3 == 0 && $1 % 5 == 0 { count = count+1 } END { print "I found " count " fizzbuzz numbers. :)" }
これを単独実行可能にするのは、他のスクリプト言語同様、
スクリプトの頭に
#! 実行内容
と、コマンド実行の一文を記載するわけです。
awkの場合UNIX系なら/bin/gawkにスクリプト読み込みオプションをつけてあげるだけでいいです。
OS Xだとgawkが/user/local/bin/gawkにあったりするので注意してください。
少なくとも、私は忘れてました。
#! /usr/local/bin/gawk -f BEGIN { count = 0 } $1 % 3 == 0 && $1 % 5 == 0 { count = count+1 } END { print "I found " count " fizzbuzz numbers. :)" }
実行権限を忘れないようにします。
$ chmod +x fizzbuzz
あとは、実行です
$ seq 1 16 | fizzbuzz I found 1 fizzbuzz numbers. :)
参考もと
- effective awk