帮分析我的小程序-关于文件检测

帮分析我的小程序-关于文件检测

opendir(DIRMAIL, "D:/Mail") or die "$!"; #目的:分析-C,-A,-M的区别
my @allfiles = grep { not /^\.{1,2}\z/ } readdir DIRMAIL;
closedir DIRMAIL;
die "No file names supplied!\n" unless @allfiles;
foreach $allfiles(@allfiles){
$node=-C 'D:/Mail/'.$allfiles;
$access=-A 'D:/Mail/'.$allfiles;
$modify=-M 'D:/Mail/'.$allfiles;
print "\nnode_time===$node\n";
print "\naccess_time===$access\n";
print "\nmodify_time===$modify\n";
}
打印结果是:
E:\perl0>perl -w tem.pl

node_time===114.000243055556

access_time===0.465115740740741

modify_time===0.0106018518518519

node_time===87.0745486111111

access_time===0.465115740740741

modify_time===112.756111111111
结果应该只有3行啊,怎么重复啦,但后面的值又不相同,疑惑了!
谢谢指教!
不好意思,我晕了,d:/Mail中有两个文件,呵呵.
FLW老大把这帖子删除了吧,我浪费资源了,该打,呵呵!


QUOTE:
目的:分析-C,-A,-M的区别

你那个文件数组有n个文件当然要输出3xn行数据了。
M 是你的脚本启动的时刻减去文件的上次更改时刻,以天为单位,
A 是你的脚本启动的时刻减去文件的上次访问时刻,以天为单位,
C 是你的脚本启动的时刻减去文件的上次inode被更改的时刻,以天为单位。
还没看文档么?还是没看懂?……
楼上的兄弟+老大:
小弟已经看过文档了,呵呵!有一点不明白:
什么是"inode被更改的时间"?是否是文件被创建的时间啊?
简单地说,inode里保存有这个文件的大小,目录入口,文件类型,属主信息,链接信息等等
所以这些信息一旦发生更改,inode自然也就发生更改了。
常用的chown, chgrp, chmod, mv等都会使inode发生改变。