Предположим, что я хочу получить реальный путь символической ссылки. Я знаю, что и системные вызовы readlink
и stat
могут разыменовать ссылку и дать мне реальный путь. Они работают одинаково (только в отношении разыменования, я знаю, что stat
делает намного больше)? Должен ли я отдать предпочтение одному другому?Получить реальный путь символической ссылки
ответ
Используйте stat()
, чтобы рассказать вам о файле в конце любой цепочки символических ссылок; это не приведет вас к пути каким-либо образом. Используйте lstat()
, чтобы получить информацию о символической ссылке, если таковая имеется. он действует как stat()
, когда указанное имя не является символической ссылкой. Используйте readlink()
, чтобы получить имя пути, хранящееся в символической ссылке, названной в качестве ее аргумента (остерегайтесь - она не имеет значения null, прекращает строку).
Если вы хотите получить полный путь к файлу в конце символической ссылки, вы можете использовать realpath()
. Это дает вам абсолютное имя пути, которое не пересекает любые символические ссылки для доступа к файлу.
Да, вы должны использовать readlink()
для этого. Однако обратите внимание, что для этого требуется, чтобы вы выделили буфер для хранения разыменованного пути. lstat()
может помочь, если вы хотите выделить буфер нужного размера, который требуется, как показано в примере внизу базы данных readlink()
man page.
- 1. Bash: как получить реальный путь символической ссылки?
- 2. Получить путь к символической ссылке
- 3. Как получить путь к файлу из символической ссылки?
- 4. Как получить исходный путь символической ссылки в PHP?
- 5. Команда Cleartool: Получить путь и цель символической ссылки
- 6. Как я могу получить название символической ссылки?
- 7. android получить реальный путь Uri.getPath()
- 8. Как получить родительский каталог текущей символической ссылки?
- 9. Абсолютный путь к символической ссылке
- 10. Фиксация/добавление символической ссылки
- 11. Проверить наличие символической ссылки
- 12. Ошибка создания символической ссылки
- 13. Apache: Как обслуживать путь из другого каталога без символической ссылки?
- 14. Laravel получить реальный путь входного файла
- 15. Как получить реальный путь к моему файлу?
- 16. получить реальный статический путь файла с адресом
- 17. android: Получить реальный путь от uri
- 18. Как получить реальный путь для базы данных?
- 19. Servlet контекст получить реальный путь возвращает нуль
- 20. PHP: получить реальный путь изображения от STRING
- 21. Получить реальный путь для Google картинки
- 22. Как получить реальный путь приложения в игре
- 23. Получить реальный путь для Uri Android
- 24. Как получить реальный путь для виртуальных путей?
- 25. Ls с источником символической ссылки
- 26. Кордовы android_asset реальный путь
- 27. Замените реальный путь PHP()
- 28. В C как мне получить путь к символической ссылке (я имею в виду путь к символической ссылке не к цели)?
- 29. Resolve реальный путь в NSString, без «..» (предыдущие ссылки каталогов)
- 30. Копирование символической ссылки в Python
Если вы просто хотите сделать ссылку на ссылку, 'stat' кажется немного переборщиком. – DrYap