linux dup2函数

本文介绍了dup2函数的基本概念和用途,详细解释了如何通过dup2函数来实现文件描述符的复制,进而重定向进程的标准输入、输出和错误输出。特别地,文章提供了具体的示例代码说明如何将标准输出重定向到指定文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.概述

     

dup和dup2也是两个非常有用的调用,它们的作用都是用来复制一个文件的描述符。它们经常用来重定向进程的stdin、stdout和stderr。


二.头文件

#include <unistd.h>


四.函数接口

int dup2(int fd, int fd2);
dup2函数成功返回时,目标描述符fd2将变成源描述符fd的复制品,换句话说,两个文件描述符现在都指向同一个文件,即函数第一个参数fd指向的文件。        

五.使用方法

重定向stdout
int fd;
fd = open("./log.txt",O_RDWR | O_CREATE,S_IRWXG);
close(1); //使用dup2时,如果参数fd2对应的文件描述符已打开,则要先关闭它
dup2( fd, 1 );
 这样stdout就定向到了fd,即标准输出会输出到log.txt中


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值