perl stat函数问题

perl stat函数问题

各位大家好!我是个新手刚在入门,请教一个简单的问题.
我写一个脚本,里面内容是:(脚本名字为 try11.pl)
#!/usr/bin/perl -w
my @infor=stat $ARGV[0];
foreach(@infor){
print"$_.\n";
}

执行命令:
./try11.pl myname.txt

显示结果为:
2051.
35930296.
33261.
1.
0.
0.
0.
201.
1215585282.
1213346769.
1213346769.
4096.
8.

其中有一个值是 元素$mode 的对应值!请问是哪个数?并且从该值如何看出它是0755?

--------------------------------------------------------------------------------------------------------
问题已解决!参考下面5楼。

说真的,没看明白
perldoc -f stat
看看perldoc有写....perldoc 很好用..建议你先学会用perldoc...


QUOTE:
原帖由 apile 于 2008-7-15 11:28 发表
perldoc -f stat
看看perldoc有写....perldoc 很好用..建议你先学会用perldoc...

里面没有写如何将33261转换成0755?也就是从stat返回的信息里面看出它的权限!
原来!
stat返回 mode的值是33261 是个10进制的!将其转换成8进制之后,是100755,这样后面3位就是它的权限了!


QUOTE:
原帖由 yingweixu 于 2008-7-15 10:52 发表
各位大家好!我是个新手刚在入门,请教一个简单的问题.
我写一个脚本,里面内容是:(脚本名字为 try11.pl)
#!/usr/bin/perl -w
my @infor=stat $ARGV[0];
foreach(@infor){
print"$_.\n";
}

执行命令 ...

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