CANONICALIZE_FILE_NAME(3) Podręcznik programisty Linuksa CANONICALIZE_FILE_NAME(3)

canonicalize_file_name - zwraca kanoniczną, absolutną ścieżkę pliku

#define _GNU_SOURCE         /* See feature_test_macros(7) */
#include <stdlib.h>
char *canonicalize_file_name(const char *path);

Funkcja canonicalize_file_name() zwraca łańcuch zawierający kanoniczną, absolutną ścieżkę odnoszącą się do ścieżki, zakończony znakiem null. W zwracanym łańcuchu rozwiązywane są dowiązania symboliczne, składniki ścieżek . i ... pathname components. Kolejne znaki (/) są zastępowane pojedynczym ukośnikiem.

Zwracany łańcuch jest dynamicznie alokowany przez canonicalize_file_name(), a wywołujący powinien zwolnić przydział za pomocą free(3), gdy przestanie być on potrzebny.

Wywołanie canonicalize_file_name(ścieżka) jest odpowiednikiem wywołania:

realpath(ścieżka, NULL);

W przypadku powodzenia canonicalize_file_name() zwraca łańcuch zakończony znakiem null. Po wystąpieniu błędu (np. składnik ścieżki jest nie do odczytania lub nie istnieje) canonicalize_file_name() zwraca NULL i ustawia errno aby poinformować o błędzie.

Zobacz realpath(3)

Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
Interfejs Atrybut Wartość
canonicalize_file_name() Bezpieczeństwo wątkowe MT-Safe

Funkcja jest rozszerzeniem GNU.

readlink(2), realpath(3)

Angielska wersja tej strony pochodzi z wydania 5.11 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres manpages-pl-list@lists.sourceforge.net.

22 marca 2021 r. GNU