• ベストアンサー

BBSのシステムに定期的に書き込みをするプログラム

perlでプログラムを組んでいます。 今、自宅のサーバーでhttpサーバーを立てているのですが、 その中にBBSのCGIがあります。 特定の時間に他のプログラムのログを読み取り、その結果を BBSに書き込むperlのプログラムを組みたいのですが、どのようにしたら perlからcgiを動作させられるかわかりません。 今まではperl単体で完結するプログラムのみを組んでました。 どのような命令を使ったら良いのか教えて下さい

質問者が選んだベストアンサー

  • ベストアンサー
noname#21216
noname#21216
回答No.4

OSはなんでしょうか? linux系なら No.3さんのいうように  cronという定期実行ソフトに登録します windowsなら、  スタートメニュー をたどっていき →アクセサリ→システムツール にある タスク を起動して  予定(自動実行)を追加します  (perlへのパス+exe + コマンドライン(cgi plファイルのフルパス)) で いいかと思います。

tukikageran
質問者

お礼

ご回答ありがとうございます。 windowsですのでタスクの設定でいこうと思います。 定期実行にフリーソフトを探すつもりでしたが、タスク登録が出来ると知り 大変助かりました。

その他の回答 (3)

  • haru1234
  • ベストアンサー率47% (22/46)
回答No.3

「定期的に」を実現するにはperlの関数を探しても見つからないですよ。 (よっぽど特殊なことをすれば不可能とは言わないですが) サーバのOSがUNIX系だということを前提に書きますが、 定期的にperlを実行するにはperlのファイルをcronに登録する必要があります。 >どのようにしたらperlからcgiを動作させられるかわかりません。 exec('何らかのプログラム.cgi'); で良いんじゃないですか?

参考URL:
http://www.mediaweb.biz/database/others/cron.html
tukikageran
質問者

お礼

ご回答ありがとうございます。 サーバーのシステムはwindowsです。 残念ながらcronは使えません。 スケジューリングについてはフリーソフトでランチャー系のソフトを探して こようと思ってましたが、 #4の方にwinでのスケジューリングの方法を教えていただきましたので、 それで設定しようかと思います。 それと、exec('何らかのプログラム.cgi');ですが、BBSなのでCGIを実行するだけ ではダメで、postする必要があります。

noname#19884
noname#19884
回答No.2

BBSと他のプログラムを実行するサーバーは同一でしょうか? 同一サーバーならばBBSの書き込み部分を他のプログラムに移植するだけで問題無さそうです。

tukikageran
質問者

お礼

ご回答ありがとうございます。 BBSのプログラムの一部を流用しない理由として、 BBSの書き込みと作ったプログラムの実行が重なってしまうと 書き込みファイルが破損する可能性があるので、 BBSにpostしてBBS自身に書き込みさせたかったのです。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

>perlからcgiを動作させられるかわかりません。 参考URL#2のような感じでPOSTできます

参考URL:
http://okwave.jp/kotaeru.php3?qid=1765613
tukikageran
質問者

お礼

ご回答ありがとうございます。 ちょっと難しそうですが、やってみようと思います。 ありがとうございました。