我想获得符号链接的完整路径。
请考虑以下内容:
/path/to/folder/link.file
链接到/path/to/folder/original.txt
。
我需要获取链接的的完整路径,而不是原始文件,例如:
$fullpath = abs_path("link.file");
将返回/path/to/folder/link.file
而不是/path/to/folder/original.txt
。
我尝试阅读,但找不到有效的解决方案。
为明确起见,链接文件本身的绝对路径
答案 0 :(得分:2)
使用不检查文件系统的方法,例如File::Spec::Functions的rel2abs
。
[~]$ perl -MCwd=abs_path -e'CORE::say abs_path($ARGV[0])' tmp
/tmp/ikegami
[~]$ perl -MFile::Spec::Functions=rel2abs -e'CORE::say rel2abs($ARGV[0])' tmp
/home/ikegami/tmp
当然,如果可以保证它是相对路径,则可以简单地使用以下内容:
[~]$ perl -MCwd=getcwd -e'CORE::say getcwd()."/".$ARGV[0]' tmp
/home/ikegami/tmp