4.4. コマンド出力を使ってカレンダー


今回はまったく別のアプローチでカレンダーを作ってみます。
しかしこれはcalというプログラム(標準的なUNIXには付いている)を利用するのですべての環境でうまくいくとは限りません。

-- プログラム 始まり -- test441.cgi

#!/usr/local/bin/ruby

print "Content-type: text/html\n\n"



cal_output = `cal`



print "<html><body>\n"

print "<pre>#{cal_output}</pre>\n"

print "</body></html>\n"

-- プログラム 終わり --

test441.cgiを作成して実行してみましょう。簡単なカレンダーが表示されたでしょうか?
このプログラムはUNIXのcalコマンドを利用しているためにcalコマンドを備えたUNIX上でしか動きません。
calコマンドを備えているのに動かない場合はまずシェル上で which cal と入力して、その出力結果を4行目の``で囲われた中に入れてください。

それではプログラムを説明します。

1,2行目はお決まりです。
4行目はcalコマンドを実行し、その出力結果をcal_outputという変数に入れています。
6〜8行目はHTMLの出力です。

CGIから他のプログラムを呼び出すことでこんなに簡単にカレンダーが出来てしまいました。
別にcalコマンド以外でも呼び出すことは可能です。
例えば4行目を
cal_output = `man cal`
とすればmanのマニュアルを見ることが出来ます。
このようにCGIから他のプログラムを呼び出しその出力を表示させることが可能です。

次回はカレンダーをもう少し派手な形にして出力できるようにしカレンダーを完成をしたいと思います。


今回始めて使った命令など

| | メニュー戻る | |

LinkExchange Japan
LinkExchange Japan Member