你可以在Perl 6中创建符号链接:
my $symlink-path = ...;
$target.symlink: $symlink-path;
仅有符号链接,如何获取目标路径?
$symlink-path.IO.????
我正在寻找确切的字符串目标,而不是任何对其进行解释的内容(例如.resolve
)。
:completely
要求目标存在,但符号链接并没有这个要求。此外,即使您的程序中没有其中一个组件,这也必须能够正常工作。 - brian d foyresolve
返回一个IO.Path对象,表示目标,而不是您在OP中请求的字符串。:completely
不需要目标存在。它会尽可能地解决,但最终会抛出异常,因为您不能将IO :: Path的对象与实际不存在的对象进行比较。 - jjmerelo.resolve
可以在符号链接和目标上工作并产生相同的路径。但是当您没有对目标的引用 且 它不存在于文件系统中时,当前的.resolve
无法帮助您。当指定:completely
时抛出异常仅包括.resolve
调用者,即原始符号链接路径,在异常有效负载中。如果它还提供了它成功解析的部分和失败的部分,那就更好了。但是 Brian 表示这仍然不能满足他的使用情况。(Lizmat 的 P5readlink 看起来是一个不错的替代方案。) - raiph