Manpages

NAAM

dup, dup2 − kopieer een bestandindicator

OVERZICHT

#include <unistd.h>

int dup(int oudebi);
int dup2(int
oudebi, int oudebi);

BESCHRIJVING

dup en dup2 maken een kopie van de bestandindicator oudebi. Na geslaagd terugkeren van dup of dup2, zijn de oude en nieuwe bestandindicators uitwisselbaar {gelijk}. Ze delen grendels, bestand positie pointers {positie in het bestand} en vlaggen; bijvoorbeeld, als de bestand-positie veranderd werd met lseek voor 1 van de beschrijvers dan wordt de positie ook voor de andere veranderd. De twee beschrijvers delen de sluit-bij-exec {voer-uit} vlag echter niet.

dup gebruikt de laagste ongebruikte beschrijver voor de nieuwe beschrijver.

dup2 maakt nieuwebi de gelijke van oudebi, nieuwebi eerst sluitend als dat nodig is.

TERUGGEEF WAARDE

dup en dup2 geven de nieuwe beschrijver terug, of −1 als een fout optrad (in welk geval errno naar behoren gezet wordt.)

FOUTEN

EBADF

{slechte bi} oudebi is geen open bestandindicator, of nieuwebi ligt buiten de toegestane waardes voor bestandindicators.

EMFILE

{max bestand} Het proces heeft al het maximale aantal bestandindicators open, en probeerde nog eentje extra te openen.

WAARSCHUWING

De fout teruggegeven door dup2 is anders dan de fout door fcntl(..., F_DUPFD, ...) teruggegeven, wanneer nieuwebi buiten de toegestane waardes ligt. Op sommige systemen geeft dup2 ook soms EINVAL terug, zoals F_DUPFD.

VOLDOET AAN

SVr4, SVID, POSIX, X/OPEN, BSD 4.3. SVr4 beschrijft extra EINTR en ENOLINK fouttoestanden. POSIX.1 voegt EINTR toe.

ZIE

fcntl(2) {manipuleer bi}, open(2) {open}, close(2) {sluit}

VERTALING

Dit is een handleiding uit manpages-dev 1.29. Alles wat tussen ’{’..’}’ staat is aanvullende vertaling, en hoort niet bij de originele handleiding. Email naar <manpages-nl [AT] nl.org>.

$Id: dup.2,v 1.1.1.1 2004/03/21 21:02:25 cor Exp $