在循环中-M为什么返回值不变化?

在循环中-M为什么返回值不变化?

在循环中-M为什么返回值不变化?
我写了一个不停运行的循环,检查文件修改情况,大致如下:
while(true){
$TransforFolder = "D:\\study\\PERL\\FolderTest";

if (opendir(DIRVAR, "$TransforFolder")){
@FileList = readdir(DIRVAR);
print("@FileList\n");

$FileCount = 1;
while ($FileCount <= @FileList) {
if (length("$FileList[$FileCount-1]") > 2){
$ModifyTime = 0;
$ModifyTime = -M "$TransforFolder\\$FileList[$FileCount-1]";
print("$ModifyTime\n");

if ($ModifyTime*24*60 <= 1){
print("$TransforFolder\\$FileList[$FileCount-1]\n");
print("Found New Folder!\n");

last;
}
}

$FileCount++;
}
}
close(DIRVAR);

print("sleep 1 minute...\n\n");
sleep(60);
}
但是发现-M回来的ModifyTime,每次循环的值都是一样的,都是第一次循环的结果。但是每次重新运行,就马上不一样了,会是最新的数值。奇怪,哪位大大能给解释一下么?




   

我这里运行,没有问题啊,.
我这里运行,没有问题啊,时间是变化的啊!!!