问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Linux 为什么复制的文件一直增加dup后缀?

发布网友 发布时间:2022-05-08 10:16

我来回答

1个回答

热心网友 时间:2024-01-23 03:47

p函数只有一个参数,也就是输入一个fd,可是没有另外一个参数说,要把这个fd复制给谁?
下面这个小程序,调用fd的结果是,打开的一个文件fd被复制到了标准输出,以至于execl调用的打印内容,被重定向到了文件当中。

#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/stat.h>
int main(void){
int filedes;
if((filedes=open("dd.txt",O_WRONLY|O_CREAT,S_IRUSR|S_IWUSR))<0)
fprintf(stderr,"%s ","open file error");
close(1);
p(filedes);
close(filedes);
execlp("ls","-l",(char * )0);
return 0;
}

所以看起来p程序就是要复制一个fd到stdout。是这样的吗,如果我要p到stdout以外的fd怎么办呢?
------解决思路----------------------
p返回的是当前最小可用描述符,你这里会重定向到标准输出是因为你close(1),使标准输出描述符可以被用,所以p返回了1.
如果我要p到stdout以外的fd,使用p2
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? winrar3.9破解版 winrar最新破解版 RAR文件下载好了之后准备解压的时候出现[输入加密文件的密码]。请问有什么方法可以破解密码? abobe photoshop cs6破解方法 软件破解视频教程哪里有 求免费破解版的prezi!! chemoffice 破解版,谢谢 PS CS6 破解方法 如何破解14.5版opnet,很急,谢谢 如何破解portal Fences 2.0破解版有吗 怎样才可以破解电脑的开机密码最好是简单的谢 – 手机爱问 怎么安装TV版的UC浏览器 抱朴子这部著作的作者是? 一级供应商和二级供应商的定义是什么 问一下语文中表语,状语,定语,补语都是什么意思啊? 发票需要改名字 怎么改? 变压器和用电设备之间还需要什么 电源变压器,生产设备需要哪些? 新年开工如何问候客户 快过年了问候语该怎么写? 请问Linux下面有哪些常见的文件后缀名呢? 我的华为手机忘记了锁屏密码怎样才能不删除里面的数据又能解开锁屏密码? 三国志14部队怎么进城 三国志14怎么一起控制所有部队 三国志14虎牢关怎么防守 《三国志》战略版攻城有什么用? 如何做出完美炸鸡柳 绝密配方大公开 炸鸡柳什么秘方,配方的 华为畅享10pIus6 128g和红米K30 6 128g那个更好? 华为畅享10和小米买哪款比较合适啊? 华为畅享10和小米买哪个好用啊? 华为畅享10plus红米k30.8加128那个好? 华为畅享10和小米买哪个好用? 华为畅享10和小米哪个好用? 华为畅享10和小米买哪款合适了? 在《沙家浜》中,阿庆嫂丢了什么进水里引得胡司令开*给八路军报了信 什么物质加进水里,能减缓水降温速度? 老虎扑进水里是什么成语 在 沙家浜 中,阿庆嫂丢了什么进水里引得胡司令开*给八路军报了信 放什么进水里牛最喜欢喝