2

В сценарии оболочки, как я могу разыменовать символическую ссылку и получить каталог файла, на который она ссылается?

1 ответ1

2

Вы можете разыменовать символические ссылки с помощью GNU readlink через:

readlink -f /path/to/symlink

Каталог легко получить через dirname:

dirname $(greadlink -f /path/to/symlink)

Обратите внимание , что BSD readlink (то есть тот , который поставляется с OS X) не поддерживает эту опцию -f но установка coreutils через Homebrew предоставит вам greadlink


Кроссплатформенное решение с Python:

python -c 'import os;print os.path.dirname(os.path.realpath("***/path/to/symlink***"))'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .