我修改了一些我写的脚本,现在只复制.jpg
文件。
该脚本似乎有效。它将所有.jpg
文件从一个文件夹复制到另一个文件夹,但该脚本旨在每隔X
几秒钟不断循环。
如果我.jpg
在启动脚本之后将新文件添加到要从中移动项目的文件夹中,它将不会复制新添加的文件。如果我停止并重新启动脚本,那么它将复制.jpg
添加的新文件,但我希望脚本在将项目放入文件夹时复制它们,而不必停止并重新启动脚本。
在我添加glob
尝试仅复制.jp
g 文件的函数之前,脚本将复制文件夹中的任何内容,即使在脚本仍在运行时将其移动到文件夹中也是如此。
为什么会这样?任何帮助都是极好的。
这是我的代码:
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
);
}