C 언어에서 프로그램의 표준 출력을 파일로 돌리는 식으로 목적지 번호를 정해서 복제할 때 dup2()가 편하다.
헤더와 선언
#include <unistd.h>
#include <fcntl.h>
int dup2(int oldfd, int newfd);반환값과 주의점
성공하면 newfd, 실패하면 -1이다. oldfd와 newfd가 같고 유효하다면 그대로 반환한다.
dup2(fd, STDOUT_FILENO)는 1번을 fd가 가리키는 파일에 연결한다. 목적지에 열린 파일이 있으면 교체하므로 fd 순서를 바꾸면 안 된다.
답글 달기