使用perl中的print()打印stat()命令的值

时间:2011-11-21 12:14:35

标签: perl

我需要查看返回的stat()命令。我怎样才能做到这一点 ?我使用了以下内容,但它不起作用: -

print(stat($filename"));

我的意思是命令已执行,但它没有打印stat必须返回的值。

3 个答案:

答案 0 :(得分:4)

http://perldoc.perl.org/functions/stat.html

($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
       $atime,$mtime,$ctime,$blksize,$blocks)
           = stat($filename);

此外,

  

File :: stat模块提供了一种方便的按名称访问机制:

use File::stat;
$sb = stat($filename);
printf "File is %s, size is %s, perm %04o, mtime %s\n",
       $filename, $sb->size, $sb->mode & 07777,
       scalar localtime $sb->mtime;

答案 1 :(得分:2)

只是原始输出? stat返回一个列表。

print (join (",", (stat($filename))), "\n");

答案 2 :(得分:1)

如果您想在perl中调试数据结构,我建议将Dumper工具视为非常宝贵。

use Data::Dumper;

print Dumper(stat($filename));

将给出输出:

$VAR1 = 89;
$VAR2 = 1394949;
$VAR3 = 33188;
$VAR4 = 1;
$VAR5 = 1000;
$VAR6 = 20;
$VAR7 = 5574438;
$VAR8 = 100;
$VAR9 = 1320421684;
$VAR10 = 1317166549;
$VAR11 = 1317166549;
$VAR12 = 4096;
$VAR13 = 4;

perldoc Data :: Dumper,了解有关此模块的选项和设置的详细信息。