对我来说,与$SOME_DIR = ".";
,我得到的输出:
./c-vs-c++1369283477./computist-1.dSYM1381934424./computist-2.dSYM1381934897./ll3.dSYM1381816690./syncio.dSYM1381984813./xs.dSYM1381986208
这mildy修改后的代码:
#!/usr/bin/env perl
use strict;
use warnings;
my $SOME_DIR = ".";
my @dirs = grep { -d } glob "$SOME_DIR/*";
foreach my $dir (@dirs)
{
printf "%-20s - %d\n", $dir, (stat $dir)[9];
}
给输出:
./c-vs-c++ - 1369283477
./computist-1.dSYM - 1381934424
./computist-2.dSYM - 1381934897
./ll3.dSYM - 1381816690
./syncio.dSYM - 1381984813
./xs.dSYM - 1381986208
你需要证明什么在你的$SOME_DIR
。例如,您可以使用:
system "ls -l $SOME_DIR";
显示您应该看到的内容。
你能告诉什么'$ SOME_DIR'样子,你的输出是什么样子?我无法重现这个问题。 – dms
在stat()调用失败后,你可以看看'$!'吗? –
我明白了,谢谢大家。删除使用File :: stat后,它工作正常。 – Ben