Rechercher une page de manuel
dup
Langue: ru
Version: 1994-08-21 (openSuse - 09/10/07)
Section: 2 (Appels système)
Sommaire
éíñ
dup, dup2 - ÓÏÚÄÁÔØ ÄÕÂÌÉËÁÔ ÆÁÊÌÏ×ÏÇÏ ÄÅÓËÒÉÐÔÏÒÁïâúïò
#include <unistd.h> int dup(int oldfd); int dup2(int oldfd, int newfd);
ïðéóáîéå
dup É dup2 ÓÏÚÄÁÀÔ ËÏÐÉÀ ÆÁÊÌÏ×ÏÇÏ ÄÅÓËÒÉÐÔÏÒÁ oldfd.óÔÁÒÙÊ É ÎÏ×ÙÊ ÄÅÓËÒÉÐÔÏÒÙ ÍÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÒÕÇ ×ÍÅÓÔÏ ÄÒÕÇÁ. ïÎÉ ÉÍÅÀÔ ÏÂÝÉÅ ÂÌÏËÉÒÏ×ËÉ, ÕËÁÚÁÔÅÌØ ÐÏÚÉÃÉÉ × ÆÁÊÌÅ É ÆÌÁÇÉ; ÎÁÐÒÉÍÅÒ, ÅÓÌÉ ÐÏÚÉÃÉÑ × ÆÁÊÌÅ ÂÙÌÁ ÉÚÍÅÎÅÎÁ Ó ÐÏÍÏÝØÀ lseek, ÎÁ ÏÄÎÏÍ ÉÚ ÄÅÓËÒÉÐÔÏÒÏ×, ÔÏ ÜÔÁ ÐÏÚÉÃÉÑ ÔÁËÖÅ ÍÅÎÑÅÔÓÑ É ÎÁ ×ÔÏÒÏÍ.
ä×Á ÄÅÓËÒÉÐÔÏÒÁ, ÏÄÎÁËÏ, ËÁÖÄÙÊ ÉÍÅÀÔ Ó×ÏÊ ÓÏÂÓÔ×ÅÎÎÙÊ ÆÌÁÇ ÚÁËÒÙÔØ-ÐÒÉ-exec.
dup ÉÓÐÏÌØÚÕÅÔ ÓÁÍÙÊ ÍÁÌÅÎØËÉÊ Ó×ÏÂÏÄÎÙÊ ÎÏÍÅÒ ÄÅÓËÒÉÐÔÏÒÁ.
dup2 ÄÅÌÁÅÔ newfd ËÏÐÉÅÊ oldfd, ÚÁËÒÙ×ÁÑ newfd, ÅÓÌÉ ÔÒÅÂÕÅÔÓÑ.
÷ïú÷òáýáåíïå úîáþåîéå
dup É dup2 ×ÏÚ×ÒÁÝÁÀÔ ÎÏ×ÙÊ ÄÅÓËÒÉÐÔÏÒ ÉÌÉ -1, ÅÓÌÉ ÐÒÏÉÚÏÛÌÁ ÏÛÉÂËÁ (× ÜÔÏÍ ÓÌÕÞÁÅ errno ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ ÄÏÌÖÎÙÍ ÏÂÒÁÚÏÍ).ïûéâëé
- EBADF
- oldfd ÎÅ Ñ×ÌÑÅÔÓÑ ÏÔËÒÙÔÙÍ ÆÁÊÌÏ×ÙÍ ÄÅÓËÒÉÐÔÏÒÏÍ, ÉÌÉ ÖÅ newfd ÎÁÈÏÄÉÔÓÑ ×ÎÅ ÄÏÐÕÓÔÉÍÏÇÏ ÄÉÁÐÁÚÏÎÁ ÆÁÊÌÏ×ÙÈ ÄÅÓËÒÉÐÔÏÒÏ×.
- EMFILE
- ðÒÏÃÅÓÓ ÕÖÅ ÏÔËÒÙÌ ÍÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ÆÁÊÌÏ× É ÐÙÔÁÅÔÓÑ ÏÔËÒÙÔØ ÅÝÅ ÏÄÉÎ.
- EINTR
- ÷ÙÚÏ× dup2 ÂÙÌ ÐÒÅÒ×ÁÎ ËÁËÉÍ-ÌÉÂÏ ÓÉÇÎÁÌÏÍ.
- EBUSY
- (ôÏÌØËÏ × Linux) íÏÖÅÔ ÓÌÕÞÉÔØÓÑ × dup2 ×Ï ×ÒÅÍÑ ÐÒÉ ÕÓÌÏ×ÉÉ ÓÏÓÔÑÚÁÔÅÌØÎÙÈ ×ÙÚÏ×Ï× open() É dup().
÷îéíáîéå
ïÛÉÂËÁ, ËÏÔÏÒÕÀ ×ÏÚ×ÒÁÝÁÅÔ dup2, ÏÔÌÉÞÁÅÔÓÑ ÏÔ ÔÏÊ, ÞÔÏ ×ÏÚ×ÒÁÝÁÅÔ fcntl(..., F_DUPFD, ...), ËÏÇÄÁ newfd ÎÁÈÏÄÉÔÓÑ ×ÎÅ ÄÏÐÕÓÔÉÍÙÈ ÐÒÅÄÅÌÏ×. îÁ ÎÅËÏÔÏÒÙÈ ÓÉÓÔÅÍÁÈ dup2 ÔÁËÖÅ ÉÎÏÇÄÁ ×ÏÚ×ÒÁÝÁÅÔ EINVAL, ËÁË F_DUPFD.ïûéâëé
åÓÌÉ newfd ÂÙÌ ÏÔËÒÙÔ, ÌÀÂÙÅ ÏÛÉÂËÉ, ËÏÔÏÒÙÅ ÍÏÇÌÉ ÂÙ ÓÌÕÞÉÔØÓÑ ×Ï ×ÒÅÍÑ close(), ÔÅÒÑÀÔÓÑ. ïÓÔÏÒÏÖÎÙÊ ÐÒÏÇÒÁÍÍÉÓÔ ÎÅ ÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÔØ dup2 ÎÅ ÚÁËÒÙ× ÓÐÅÒ×Á newfd .óïïô÷åôóô÷éå óôáîäáòôáí
SVr4, SVID, POSIX, X/OPEN, BSD 4.3. SVr4 ÄÏËÕÍÅÎÔÉÒÕÅÔ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ËÏÄÙ ÏÛÉÂËÉ EINTR É ENOLINK. POSIX.1 ÄÏÂÁ×ÌÑÅÔ EINTR. ïÛÉÂËÁ EBUSY Ñ×ÌÑÅÔÓÑ ÓÐÅÃÉÆÉÞÎÏÊ ÄÌÑ Linux.óíïôòé ôáëöå
fcntl(2), open(2), close(2).ðåòå÷ïä
Copyright (C) Alexey Mahotkin <alexm@hsys.msk.ru> 1999, ÷ÉËÔÏÒ ÷ÉÓÌÏÂÏËÏ× <corochoone@perm.ru> 2003Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre