Ik heb een string die het bestandssysteempad naar een bestaande symbolische link bevat. Ik wil het pad krijgen waarnaar deze link verwijst.
Eigenlijk wil ik hetzelfde dat ik door dit stukje hacken heen zou komen:
s = "path/to/existing/symlink"
`ls -ld #{s}`.scan(/-> (.+)/).flatten.last
maar ik wil het doen zonder beschietingen.
Antwoord 1, autoriteit 100%
Ik denk dat readlinkis wat u zoekt:
File.readlink("path/to/symlink")
Antwoord 2, autoriteit 70%
require 'pathname'
Pathname.new("symlink").realpath
of leeslink zoals anderen al zeiden
Antwoord 3, autoriteit 22%
Of je kunt het proberen:
File.realpath("symlink_path")
Wat werkt voor zowel symbolische links als normale bestanden.