更新のタイミング

作成日:2000-11-05
最終更新日:

先に述べたスクリプトに関して、 本当はまだ直すべきところがたくさんある。一つだけ述べる。

アップロードすべきファイルは一律に24時間前以降に更新されたファイルとしたが、 本来はアップロードすべきファイルは、 最後にアップロードした時刻より後で更新されたファイルすべてとすべきだ。

これを実現するため、次のように考えた。 まず、最後にアップロードした時刻を記録するファイルを用意する。 これを kosin.txt という名前とする。 そして、アップロードをする前に、このファイルのタイムスタンプを読み込んでおく。 このファイルの更新時刻より新しいファイルをアップロードの対象とする。 そして、アップロードをした後で、このときの時刻をファイルにアップロードする。


$kankaku = (-M 'kosin.txt');		# 最後にアップロードされてからどれだけ時間がたったか
(中略)
			if ((-f $_) && (-M $_ < $kankaku)) { # 最後のアップロード以降変更されたファイルに対して
(中略)

open(KOSIN, '>>kosin.txt');	# 更新ファイルに書き込む

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
	localtime(time);
 printf KOSIN "%4d-%02d-%02d %02d:%02d:%02d\n", 
	$year + 1900, $mon + 1,$mday, $hour, $min, $sec;

close(KOSIN);

まりんきょ学問所perl手習いの部屋 > 更新のタイミング


MARUYAMA Satosi