tail head cat sleep
QR code linking to this page

Manpage  — GETDENTS

BEZEICHNUNG

getdents - Abfrage von Verzeichniseinträgen

INHALT

ZUSAMMENFASSUNG

#include <unistd.h> 
#include <linux/dirent.h> 
#include <linux/unistd.h> 

_syscall3(int, getdents, uint, fd, struct dirent *, dirp, uint, count);

int getdents(unsigned int fd, struct dirent *dirp, unsigned int count);

BESCHREIBUNG

getdents liest mehrere dirent-Strukturen aus dem Verzeichnis, das durch fd angegeben ist. Die Struktur wird im Speicherbereich dirp abgelegt. Der Parameter count gibt die Größe dieses Speicherbereiches an.

Die Struktur dirent ist definiert durch:

struct dirent
{
    long d_ino;                 /* Inode-Nummer */
    off_t d_off;                /* Offset zum nächsten dirent */
    unsigned short d_reclen;    /* Länge dieses dirent */
    char d_name [NAME_MAX+1];   /* Dateiname (Null-terminiert) */
}

d_ino ist die Nummer einer Inode. d_off ist die Distanz vom Beginn eines Verzeichnisses zum nächsten dirent. d_reclen gibt die Größe dieses gesamten dirent an. d_name ist ein mit Null terminierter Dateiname.

Diese Funktion ersetzt den Systemaufruf readdir(2).

RÜCKGABEWERT

Bei Erfolg wird die Anzahl der gelesenen Bytes geliefert, wenn am Ende des Verzeichnisses angekommen wurde, wird 0 geliefert, bei aufgetretenem Fehler wird -1 geliefert und errno wird entsprechend gesetzt.

FEHLER

EBADF fd ist kein gültiger Dateideskriptor.
ENOTDIR
  Der Dateideskriptor fd verweist nicht auf ein Verzeichnis.

SIEHE AUCH

readdir(2), readdir(3).

22. Juli 1995 GETDENTS (2) Linux 1.3.6

tail head cat sleep
QR code linking to this page


Bitte richten Sie Ihre Kommentare zu diesem Handbuch Seite Service, Ben Bullock. Privacy policy.

Like a classics radio station whose play list spans decades, Unix simultaneously exhibits its mixed and dated heritage. There's Clash-era graphics interfaces; Beatles-era two-letter command names; and systems programs (for example, ps) whose terse and obscure output was designed for slow teletypes; Bing Crosby-era command editing (# and @ are still the default line editing commands), and Scott Joplin-era core dumps.
— The Unix Haters' handbook