Provided by: manpages-ru-dev_4.27.0-1_all bug

НАИМЕНОВАНИЕ

       opendir, fdopendir - открывает каталог

БИБЛИОТЕКА

       Стандартная библиотека языка C (libc, -lc)

ОБЗОР

       #include <sys/types.h>
       #include <dirent.h>

       DIR *opendir(const char *name);
       DIR *fdopendir(int fd);

   Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

       fdopendir():
           Начиная с glibc 2.10:
               _POSIX_C_SOURCE >= 200809L
           До glibc 2.10:
               _BSD_SOURCE

ОПИСАНИЕ

       Функция  opendir()  открывает  поток  каталога,  соответствующий  каталогу  с  именем  name, и возвращает
       указатель на поток каталога. Поток устанавливается на первую запись в каталоге.

       Функция fdopendir() похожа на opendir(), но возвращает поток каталога для каталога, на который  ссылается
       открытый  файловый  дескриптор  fd. После успешного вызова fdopendir(), дескриптор fd используется только
       внутри реализации и не должен использоваться в приложении.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       The opendir()  and fdopendir()  functions return a pointer to the directory stream.  On  error,  NULL  is
       returned, and errno is set to indicate the error.

ОШИБКИ

       EACCES Доступ запрещен.

       EBADF  Значение fd не является подходящим файловым дескриптором, открытым для чтения.

       EMFILE Было достигнуто ограничение по количеству открытых файловых дескрипторов на процесс.

       ENFILE Достигнуто максимальное количество открытых файлов в системе.

       ENOENT Каталог не существует, либо name содержит пустую строку.

       ENOMEM Недостаточно памяти для завершения операции.

       ENOTDIR
              Значение name не является каталогом.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌─────────────────────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ ИнтерфейсАтрибутЗначение │
       ├─────────────────────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │ opendir(), fdopendir()                                              │ Безвредность в нитях │ MT-Safe  │
       └─────────────────────────────────────────────────────────────────────┴──────────────────────┴──────────┘

СТАНДАРТЫ

       POSIX.1-2008.

СТАНДАРТЫ

       opendir()
              SVr4, 4.3BSD, POSIX.1-2001.

       fdopendir()
              POSIX.1-2008.  glibc 2.4.

ПРИМЕЧАНИЯ

       Записи имён файлов можно читать из потока каталога с помощью readdir(3).

       Задействованный файловый дескриптор потока каталога может быть получен в помощью dirfd(3).

       Функция  opendir()  устанавливает  флаг  close-on-exec  для файлового дескриптора, указывающего на DIR *.
       Функция  fdopendir()  оставляет  флаг  close-on-exec  не  изменённым  для  файлового  дескриптора  fd.  В
       POSIX.1-200x  нет  точного  определения  на  этот  счет,  хотя  успешный вызов fdopendir() установит флаг
       close-on-exec для файлового дескриптора fd.

СМОТРИТЕ ТАКЖЕ

       open(2), closedir(3), dirfd(3), readdir(3), rewinddir(3), scandir(3), seekdir(3), telldir(3)

ПЕРЕВОД

       Русский перевод этой страницы  руководства  разработал(и)  Azamat  Hackimov  <azamat.hackimov@gmail.com>,
       Konstantin    Shvaykovskiy   <kot.shv@gmail.com>,   Yuri   Kozlov   <yuray@komyakino.ru>,   Иван   Павлов
       <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

       Этот перевод является свободной программной документацией; он распространяется на условиях  общедоступной
       лицензии  GNU  (GNU  General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

       Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите  об  этом
       разработчику(ам)   по   его(их)  адресу(ам)  электронной  почты  или  по  адресу  списка рассылки русских
       переводчиков.

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                                       opendir(3)