.jpg
ファイルをコピーするだけのスクリプトをいくつか修正しました。
スクリプトは機能しているようです。.jpg
あるフォルダーから別のフォルダーにすべてのファイルをコピーしますが、スクリプトはX
数秒ごとに継続的にループすることを意図しています。
.jpg
スクリプトを既に開始した後にアイテムの移動元のフォルダーに新しいファイルを追加すると、新しく追加されたファイルはコピーされません。スクリプトを停止して再起動すると、追加された新しい.jpg
ファイルがコピーされますが、スクリプトを停止して再起動する必要がなく、フォルダーにアイテムをコピーする必要があります。
glob
g ファイルのみをコピーしようとする関数を追加する前は.jp
、スクリプトがまだ実行されている間にフォルダーに移動されたとしても、スクリプトはフォルダー内のすべてをコピーしていました。
なぜこうなった?どんな助けでも素晴らしいでしょう。
これが私のコードです:
use File::Copy;
use File::Find;
my @source = glob ("C:/sorce/*.jpg");
my $target = q{C:/target};
while (1)
{ sleep (10);
find(
sub {
if (-f) {
print "$File::Find::name -> $target";
copy($File::Find::name, $target)
or die(q{copy failed:} . $!);
}
},
@source
);
}