亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1569 | 回復: 3
打印 上一主題 下一主題

[Linux] [結貼]為什么dup總是復制一個fd到標準輸出? 這是默認的行為嗎? [復制鏈接]

論壇徽章:
0
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2015-02-01 09:41 |只看該作者 |倒序瀏覽
本帖最后由 centos_71 于 2015-02-02 20:43 編輯

dup函數(shù)只有一個參數(shù),也就是輸入一個fd,可是沒有另外一個參數(shù)說,要把這個fd復制給誰?
下面這個小程序,調(diào)用fd的結果是,打開的一個文件fd被復制到了標準輸出,以至于execl調(diào)用的打印內(nèi)容,被重定向到了文件當中。

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <sys/types.h>
  4. #include <unistd.h>
  5. #include <fcntl.h>
  6. #include <sys/stat.h>
  7. int main(void){
  8.     int filedes;
  9.     if((filedes=open("dd.txt",O_WRONLY|O_CREAT,S_IRUSR|S_IWUSR))<0)
  10.         fprintf(stderr,"%s ","open file error");
  11.     close(1);
  12.     dup(filedes);
  13.     close(filedes);
  14.     execlp("ls","-l",(char * )0);
  15.     return 0;
  16. }
復制代碼
所以看起來dup程序就是要復制一個fd到stdout。是這樣的嗎,如果我要dup到stdout以外的fd怎么辦呢?

論壇徽章:
46
2015小元宵徽章
日期:2015-03-06 15:58:18羊年新春福章
日期:2015-04-14 10:37:422015年亞洲杯之阿曼
日期:2015-04-14 10:41:50NBA常規(guī)賽紀念章
日期:2015-05-04 22:32:03NBA季后賽大富翁
日期:2015-05-04 22:34:11菠菜明燈
日期:2015-05-04 22:35:49新奧爾良黃蜂
日期:2015-05-04 22:49:2315-16賽季CBA聯(lián)賽之廣夏
日期:2015-12-11 15:02:342015年亞洲杯之巴勒斯坦
日期:2015-03-04 19:56:562015年亞洲杯之阿聯(lián)酋
日期:2015-03-04 11:19:04休斯頓火箭
日期:2015-03-02 16:32:11紐約尼克斯
日期:2015-03-02 16:09:04
2 [報告]
發(fā)表于 2015-02-01 09:42 |只看該作者
dup到最小的可用文件描述符

論壇徽章:
0
3 [報告]
發(fā)表于 2015-02-01 13:32 |只看該作者
回復 2# super皮波

原來是dup到一個最小的可用的文件描述符。我有點入門了,謝謝。

論壇徽章:
6
2015年辭舊歲徽章
日期:2015-03-05 16:13:092015年迎新春徽章
日期:2015-03-05 16:13:092015小元宵徽章
日期:2015-03-06 15:58:1815-16賽季CBA聯(lián)賽之浙江
日期:2016-11-05 14:38:4115-16賽季CBA聯(lián)賽之新疆
日期:2016-11-11 18:38:06
4 [報告]
發(fā)表于 2015-02-01 16:02 |只看該作者
要復制原描述符到一個指定的描述符,可用dup2或dup3
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP