52

我有一个字符串,其中包含指向现有符号链接的文件系统路径。我想得到这个链接指向的路径。

基本上我想要的和我经历的黑客一样:

s = "path/to/existing/symlink"
`ls -ld #{s}`.scan(/-> (.+)/).flatten.last

但我想做到这一点而不用炮轰。

4

3 回答 3

69

我认为readlink是您正在寻找的内容:

File.readlink("path/to/symlink")
于 2009-08-06T09:55:08.103 回答
48
require 'pathname'
Pathname.new("symlink").realpath

或其他人所说的阅读链接

于 2009-08-06T09:56:01.830 回答
15

或者您可以尝试:

File.realpath("symlink_path")

这适用于符号链接和普通文件。

于 2014-08-14T14:13:53.630 回答