Provided by: manpages-de-dev_4.15.0-9_all
BEZEICHNUNG
opendir - ein Verzeichnis öffnen
ÜBERSICHT
#include <sys/types.h> #include <dirent.h> DIR *opendir(const char *name); DIR *fdopendir(int dd); Mit Glibc erforderliche Makros (siehe feature_test_macros(7)): fdopendir(): Seit Glibc 2.10: _POSIX_C_SOURCE >= 200809L Vor Glibc 2.10: _GNU_SOURCE
BESCHREIBUNG
Die Funktion opendir() öffnet einen Verzeichnis-Datenstrom der dem Verzeichnis name entspricht und liefert einen Zeiger auf den ersten Eintrag des Verzeichnisses zurück. Die Funktion fdopendir() ähnelt opendir(), gibt aber eine Folge der Verzeichniseinträge für das Verzeichnis zurück, auf das der Dateideskriptor dd verweist. Nach einem erfolgreichen Aufruf von fdopendir() wird dd intern von der Implementierung benutzt und sollte nicht anderweitig von der Anwendung benutzt werden.
RÜCKGABEWERT
Die Funktionen opendir() und fdopendir() liefern einen Zeiger auf den Verzeichnis-Datenstrom zurück. Bei einem Fehler wird ein NULL zurückgegeben und errno gesetzt, um den Fehler anzuzeigen.
FEHLER
EACCES Zugriff verweigert EBADF dd ist kein gültiger zum Lesen geöffneter Dateideskriptor. EMFILE Die Beschränkung pro Prozess der Anzahl offener Datei-Deskriptoren wurde erreicht. ENFILE Die systemweite Beschränkung für die Gesamtzahl offener Dateien wurde erreicht. ENOENT Das Verzeichnis existiert nicht oder name ist eine leere Zeichenkette. ENOMEM Der Speicher reicht nicht aus, um den Vorgang zu beenden. ENOTDIR name ist kein Verzeichnis.
VERSIONEN
fdopendir() ist in Glibc seit Version 2.4 verfügbar.
ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke. ┌───────────────────────────────────────────────────────┬───────────────────────┬─────────┐ │Schnittstelle │ Attribut │ Wert │ ├───────────────────────────────────────────────────────┼───────────────────────┼─────────┤ │opendir(), fdopendir() │ Multithread-Fähigkeit │ MT-Safe │ └───────────────────────────────────────────────────────┴───────────────────────┴─────────┘
KONFORM ZU
opendir() ist auf SVr4 und 4.3BSD vorhanden und in POSIX.1-2001 spezifiziert. fdopendir() ist in POSIX.1-2008 spezifiziert.
ANMERKUNGEN
Dateinameneinträge können mittels readdir(3) aus einem Verzeichnis-Stream gelesen werden. Der zugrundeliegende Dateideskriptor des Verzeichnis-Datenstroms kann mit dirfd(3) abgefragt werden. Die Funktion opendir() setzt dem Schalter »close-on-exec« für den Dateideskriptor, der DIR * zugrundeliegt. Die Funktion fopendir() lässt die Einstellung des Schalter »close-on-exec« für den Dateideskriptor dd unverändert. POSIX.1-200x spezifiziert nicht, ob ein erfolgreicher Aufruf von fdopendir() den Schalter »close-on-exec« für den Dateideskriptor dd setzt.
SIEHE AUCH
open(2), closedir(3), dirfd(3), readdir(3), rewinddir(3), scandir(3), seekdir(3), telldir(3)
KOLOPHON
Diese Seite ist Teil der Veröffentlichung 5.13 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Markus Kaufmann <markus.kaufmann@gmx.de> und Chris Leick <c.leick@vollbio.de> erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder neuer bezüglich der Copyright- Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E- Mail an die Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.