miharing は、 指定されたファイルを見張り、 そのファイルが更新されたら何かを行う、という小さなプログラムです。 雛型としてご利用下さい。 「無償・無保証・著作権放棄」 で公開しています。
#! /usr/bin/env perl ### NO WARRANTY, NO COPYRIGHT! ### # ファイルの更新を見張って、更新されたら何かを行う # Usage: prog file use strict; my $fn = shift @ARGV; # 監視対象ファイル my $up; while (-e $fn) { my $cur = (stat $fn)[9]; # 監視対象ファイルの更新時間 #print "$up $cur\n"; # for debug if ($up != $cur) { ### 対象ファイルがアップデートされたときに行う処理 # ここから print "update!\n"; # ここまで $up = $cur = (stat $fn)[9]; } sleep 1; # 監視間隔 }
起動直後は、ファイルの更新のあるなしにかかわらず、 「何か」を行うようになっています。 それでは困るという場合は 7 行目を以下のようにします。
my $up = (stat $fn)[9];
私は、ライブカメラ の画像をローカルのマシンから Web サーバへアップデートするのに使っています。 ▼ ▼