2011-12-20 4 views
2

У меня есть относительный url и абсолютный путь, и я хочу решить его до абсолютного пути.Erlang. Сделать относительный путь абсолютным

Попробовали использовать filename: abspath ("test", "/ root /"). и работает, но не с относительными путями типа «../» например, filename: abspath («../», «/ root /»). дает «/root/../»

У кого-нибудь есть простое решение?

ответ

2

В документации файла: absname/1 говорит: «Не предпринималось никаких попыток создать кратчайшее абсолютное имя, потому что это может дать неверные результаты на файловых системах, разрешить ссылки ».

Если ваш пример filename: abspath ("../", "/ root /") даст вам "/" ("оптимизированный" путь) вместо "/root/../", он может фактически обратитесь к неправильному каталогу, если «/ root» является ссылкой на другой каталог, например «/ foo/bar/baz». Вы уверены, что оптимизированный путь - это то, что вы хотите? Результат из abspath/2 является правильным, но, возможно, не «красивым».

Смежные вопросы