##### 出力関数 #####
# ヘッダ部分の出力関数
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)
}