人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Perlについての質問です。

下記は、チャットCGIの一部分で、「ログファイルの最前部に1行の文字列を挿入する」という動作をするものです。これを、「ログファイルの『最後部に』1行の文字列を挿入する」という動作に変更するには、具体的にどこをどのように変更すればよいでしょうか。

while ($max <= @lines) { pop(@lines); }
unshift (@lines,"$date<>$name<>$in{'comment'}<>$color<>$ENV{'REMOTE_ADDR'}\n");
open(OUT,">$logfile") || &error("Write Error : $logfile");
print OUT @lines;
close(OUT);

●質問者: crashtruck
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:CGI COLOR MAX name open
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● litt
●100ポイント ベストアンサー

普通は open(OUT,">> $filename") とすれば追記モードでファイルを開くので

何も考えずにprintしていけばファイル末尾に追加されていきます。

今回のように$maxで最大行数を指定しているのであれば

while ($max <= @lines) { shift(@lines); }

push (@lines,"$date<>$name<>$in{'comment'}<>$color<>$ENV{'REMOTE_ADDR'}\n");

open(OUT,">$logfile") || &error("Write Error : $logfile");

print OUT @lines;

close(OUT);

でどうでしょうか?

◎質問者からの返答

できました、ありがとうございます!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ