tail head cat sleep
QR code linking to this page

Manpage  — DUP

BEZEICHNUNG

dup, dup2 - dupliziert einen file descriptor (Datei-Referenz)

INHALT

SYNOPSIS

#include <unistd.h> 

int dup(int oldfd); int dup2(int oldfd, int newfd);

BESCHREIBUNG

dup und dup2 erzeugen eine Kopie des file descriptor oldfd.

Die alten und neuen Deskriptoren können wahlfrei benutzt werden. Sie teilen sich Locks, Dateipositionszeiger (File Position Pointers) und Flags; falls beispielsweise die Dateiposition durch lseek für einen der Deskriptoren verändert wurde, ist es sie auch für den anderen.

Die close-on-exec flag (schliessen-bei-ausführung) teilen sie sich jedoch nicht.

dup benutzt den unbenutzten Deskriptor mit der kleinsten Nummer für den neuen.

dup2 macht newfd zur Kopie von oldfd, wobei newfd
,falls notwendig, zuerst geschlossen wird.

WIEDERGABEWERT

dup und dup2 geben den neuen descriptor zurück, oder -1 falls ein Fehler auftrat (in diesem Falle wird auch errno entsprechend gesetzt).

FEHLER

EBADF oldfd ist kein offener file descriptor, oder newfd ist außerhalb des für Dateideskriptoren erlaubten Bereiches.
EMFILE Der Prozess hat schon die maximale Anzahl an file deskriptoren offen und versuchte einen weiteren zu öffnen.

WARNUNG

Der Fehler, der von dup2 zurückgegeben wird, ist unterschiedlich zu demjenigen von fcntl(...,F_DUPFD,...) wenn newfd außerhalb des Bereiches ist. Weiterhin gibt dup2 auf einigen Systemen EINVAL wie F_DUPFD zurück.

KONFORM ZU

SVID, AT&T, POSIX, X/OPEN, BSD 4.3

SIEHE AUCH

fcntl(2), open(2), close(2).


21 August 1994 DUP (2) Linux 1.1.46

tail head cat sleep
QR code linking to this page


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