Как получить Абсолютный Путь для файла символической ссылки? - PullRequest
7 голосов
/ 03 февраля 2011

# test-> a.pl

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

как получить файл Absolute Path for symlink?

Ответы [ 2 ]

12 голосов
/ 03 февраля 2011

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);
}
3 голосов
/ 03 февраля 2011

если вы используете File :: Spec rel2abs вместе с readlink, вы получите путь abs, даже если это символическая ссылка на другую символическую ссылку

use File::Spec;

$path = File::Spec->rel2abs( readlink($file) ) ;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...