用于符号链接的 Cwd::abs_path 的 Perl 替代方案

发布于 2024-11-29 05:30:01 字数 394 浏览 0 评论 0原文

我的 Perl 应用程序接收文件和参数的相对路径,然后将它们转换为绝对路径。我一直使用 Cwd::abs_path($fileName) 很好,但现在我需要支持符号链接,并且我发现 abs_path 将为我提供原始文件的绝对路径。

我需要的是 Cwd::abs_path 的替代方案,当给定符号链接的相对路径时,会将其转换为同一符号链接的绝对路径。有什么建议吗?

例子:

/originals/myfile1
/links/myfile1link -> /originals/myfile1

> cd /links
> perl converter.pl /myfile1link
> output: /links/myfile1link

My Perl app receives relative paths to files and arguments and then converts them to absolute paths. I had been using Cwd::abs_path($fileName) just fine, but now I need to support symbolic links and I find that abs_path will give me the absolute path to the original file.

What I need is an alternative to Cwd::abs_path that when given a relative path to a symlink will convert it to an absolute path to that same symlink. Any recommendations?

Example:

/originals/myfile1
/links/myfile1link -> /originals/myfile1

> cd /links
> perl converter.pl /myfile1link
> output: /links/myfile1link

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

秋日私语 2024-12-06 05:30:01

File::Spec->rel2abs 不执行任何系统检查,因此它不会解析符号链接。

File::Spec->rel2abs does not do any system checks, so it won't resolve symlinks.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文