LINUX.ORG.RU

уже было. readlink /proc/self/fd.
хорошо помню, т.к. я утверждал, что этого сделать нельзя,
а Dead, зараза, меня поправил :))

idle ★★★★★
()
Ответ на: комментарий от idle

:)
Но через proc - это не портабельно получается.
Там еще получалось, что по fd можно получить номер inode, но как потом inode преобразовать в имя файла неизвестно, разве что перебором.

Dead ★★★★
()

Основной совет: старайся избегать такой задачи. Сохраняй имя файла у себя в программе где-нибудь рядом с дескриптором.

anonymous
()
Ответ на: комментарий от idle

>а Dead, зараза

Dead - человек, а кто ХХХХХХ мы ещё разберёмся

cvv ★★★★★
()
Ответ на: комментарий от anonymous

>А как быть в случае, когда у файла несколько имен?

Файл по заданному файловому дескриптору мог быть открыт лишь по одному имени. Для ядер Linux с поддержкой dentry cache (а ето все обозримые версии Linux) имя можно раскрутить до корня текущего процесса через /proc. :)

Murr ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.