如何获取符号链接文件的绝对路径?

时间:2011-02-03 14:53:29

标签: perl

#test-> a.pl

my $file = '/home/joe/test';
if ( -f $file && -l $file )  {
    print readlink( $file ) ;
}

如何获取符号链接文件的绝对路径?

2 个答案:

答案 0 :(得分:11)

Cwd通过abs_path提供此类功能。

#!/usr/bin/perl -w

use Cwd 'abs_path';

my $file='/home/joe/test';
if( -f $file && -l $file ) {
    print abs_path($file);
}

答案 1 :(得分:3)

如果你使用File :: Spec rel2abs和readlink你将得到abs路径,即使它是另一个符号链接的符号链接

use File::Spec;

$path = File::Spec->rel2abs( readlink($file) ) ;