Perl:获取(未解析的)符号链接路径

时间:2018-07-15 11:37:13

标签: perl

我有一个perl脚本,其路径为 /scripts/original/ascript.pl

此脚本的符号链接也存在: /scripts/linked/ascript.pl

在ascript.pl中,我需要从中调用脚本的路径(因此/ scripts / original或/ scripts / linked)。

abs_path()始终返回解析的位置:

use strict;
use Cwd qw(abs_path);

print abs_path($0); # Always prints /scripts/original/ascript.pl

如何获取完整的未解决路径?

1 个答案:

答案 0 :(得分:2)

您可以使用Cwd::getcwd()来获取脚本的未解析路径。但这已经在FindBin中以更健壮和更通用的方式实现了,因此我们不必重新发明轮子:

use FindBin;
print '$Bin: ', $FindBin::Bin, "\n";
print '$Script: ', $FindBin::Script, "\n";

输出

$Bin: /scripts/linked
$Script: ascript.pl

您查看FindBin here的来源。