В сценарии оболочки, как я могу разыменовать символическую ссылку и получить каталог файла, на который она ссылается?
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***"))'