如何使用perl获取war文件的统计信息

时间:2011-08-05 17:41:36

标签: perl clearcase perl-data-structures

我有Perl脚本来获取给定文件的统计信息。但它不适用于.war文件。 (此文件具有符号链接。)

我正在传递包含多个文件的文件位置。

$fntxt指向/dw/xyz/file1.txtfile1.txt/vob/vob1/test.war

执行@Stats=stat($ln);会为.war文件返回一个空数组。

open(DAT, $fntxt);
@fnames=<DAT>;
close(DAT);
print "@fnames\n";

foreach $ln (@fnames)
{
    chomp $ln;
    $i = length $ln;   
    if ($i>0)
    {     
    @Stats=stat($ln);
    if (!@Stats)
    {
        print "File [$ln] specified in [$fntxt] does not exist. Correct then rerun.\n";
        exit 255;
    }

    ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)
         = localtime((stat($ln))[9]);
    $mon += 1;
    $year += 1900;

    $tstamp = sprintf("%04d%02d%02d%02d%02d.%02d",
        $year,$mon,$mday,$hour,$min,$sec)
}

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

使用符号链接(假设有一些unix风格),您希望链接文件的权限,而不是链接。使用-l检测文件是符号链接和readlink以找出它链接到的内容。如果有多个链接(即指向链接的链接...),请按照它们进行操作,直至找到该文件。