##### 出力関数 ##### # ヘッダ部分の出力関数 function putheader(titlestr,headline) { print "<html>" print "<head>" printf "<title>%s</title>\n",titlestr print "</head>" print "<body>" printf "<h1>%s</h1>\n",titlestr printf "%s<hr>\n",headline } # 本文の出力関数 function putbody(body,N, j) { for(j=1;j<=N;j++) print body[j] } # 最後の部分の出力関数 function puttail(tail,N, j) { print "<hr>" for(j=1;j<=N;j++) print tail[j] }このように関数化しておくことで、 後で拡張やカスタマイズなどがしやすいようにしておきます。 なお、これらの関数は以下のようなことをしています。
これらの関数を使えば、END ブロックは以下のようにすればいいことになります。
##### END ブロック ##### END{ if(errorexit){ printf "エラー発生 (code = %d)\n",errorexit > "/dev/stderr" exit } putheader(titlestr,headline) putcontents(body,N_body) puttail(tail,N_tail) }