REALPATH(3)

BEZEICHNUNG
realpath - gibt den standardisierten absoluten Pfadnamen zurück.

ÜBERSICHT
#include <sys/param.h>
#include <unistd.h>

char *realpath(char *path, char resolved_path[]);

BESCHREIBUNG
realpath erweitert alle symbolischen Links und löst Referenzen auf '/./', '/../' und zusätzliche Zeichen '/' in dem Null-Terminierten String auf, der durch path angegeben ist, und speichert den standardisierten absoluten Pfadnamen in dem Puffer der Größe MAXPATHLEN, der durch resolved_path angegeben ist. Der resultierende Pfad enthält keinen symbolischen Link oder Komponenten wie '/./' oder '/../'.

RÜCKGABEWERT
Wenn kein Fehler auftritt gibtr die Funktion einen Pointer auf resolved_path zurück. Anderenfalls gibt sie einen NULL-Pointer zurück und platziert in resolved_path den absoluten Pfad der Komponente path, die nicht aufgelöst werden konnte. Die globale Variable errno wird gesetzt um den Fehler anzuzeigen.

FEHLER

ENOTDIR
    Eine Komponente des Pfad-Präfixes ist kein Verzeichnis.

EINVAL
    Der Pfadname enthält ein Zeichen, dessen höchstes Bit gesetzt ist.

ENAMETOOLONG
    Eine Komponente eines Pfadnameds überschreitet MAXNAMLEN Zeichen, oder eine ganzer Pfad überschreitet MAXPATHLEN Zeichen.

ENOENT
    Die angegebene Datei existiert nicht.

EACCES
    Such-Zugriff verweigert für eine Komponente des Pfad-Präfixes.

ELOOP
    Zu viele symbolische Links traten auf während der Umsetzung des Pfadnamens.

EIO Ein E/A-Fehler trat auf während des Lesens aus dem Dateisystem.

SIEHE AUCH
readlink(2), getcwd(3).