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

ИМЯ

       canonicalize_file_name - возвращает канонизированный абсолютный путь

LIBRARY

       Standard C library (libc, -lc)

СИНТАКСИС

       #define _GNU_SOURCE         /* See feature_test_macros(7) */
       #include <stdlib.h>

       char *canonicalize_file_name(const char *path);

ОПИСАНИЕ

       Функция   canonicalize_file_name()   возвращает  строку,  завершающуюся  null,  содержащую
       канонизированный абсолютный путь соответствующего path. В возвращаемой строке раскрываются
       символьные  ссылки, а также компоненты пути . и ... Стоящие подряд символы косой черты (/)
       заменяются одной чертой.

       Место под возвращаемую строку выделяется canonicalize_file_name() динамически и вызывающий
       должен освободить его с помощью free(3), когда оно станет ненужным.

       Вызов canonicalize_file_name(path) эквивалентен вызову:

           realpath(path, NULL);

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

       При  нормальном  завершении  работы  canonicalize_file_name()  возвращает  строку с null в
       конце. При ошибке (например, компонент пути невозможно прочитать или  он  не  существует),
       canonicalize_file_name()  возвращает NULL и устанавливает в errno соответствующее значение
       ошибки.

ОШИБКИ

       Смотрите realpath(3).

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).

       ┌───────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ИнтерфейсАтрибутЗначение │
       ├───────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │canonicalize_file_name()                               │ Безвредность в нитях │ MT-Safe  │
       └───────────────────────────────────────────────────────┴──────────────────────┴──────────┘

СТАНДАРТЫ

       Эта функция является расширением GNU.

СМ. ТАКЖЕ

       readlink(2), realpath(3)

ПЕРЕВОД

       Русский   перевод   этой    страницы    руководства    был    сделан    Azamat    Hackimov
       <azamat.hackimov@gmail.com>,  Dmitriy  S.  Seregin  <dseregin@59.ru>,  Dmitry Bolkhovskikh
       <d20052005@yandex.ru>,    Katrin    Kutepova    <blackkatelv@gmail.com>,    Yuri    Kozlov
       <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

       Этот  перевод  является  бесплатной  документацией;  прочитайте  Стандартную  общественную
       лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы
       узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы  обнаружите  ошибки  в  переводе этой страницы руководства, пожалуйста, отправьте
       электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.