首先,Unix进程使用文件描述符0,1,2作为标准输入、输出和错误的通道。

  其次,当进程请求一个新的文件描述符的时候,系统内核将最低可用的文件描述符赋给它。

  第三,文件描述符集合通过exec调用传递,且不会被改变。

如何将stdin定向到文件

  方法1 :close then open

  方法2 :open..close..dup..close

  方法3 :open..dup2..close

newfd = dup(oldfd);
newfd = dup2(oldfd, newfd);

系统调用dup复制了文件描述符oldfp。

而dup2将oldfd文件描述符复制给newfd。两个文件描述符都指向同一个打开的文件

  

  

最新文章

  1. 观点:BPM已经过时了?
  2. Python中的*args和**kwarg
  3. 20135208 20135212 LINUX第一次实验报告
  4. Swift - 自动布局库SnapKit的使用详解3(约束优先级,约束做动画)
  5. 深入浅出MongoDB(二)概述
  6. 4630 no pain no game 树状数组
  7. Python开发环境的搭建(win7)
  8. Solr搜索引擎搭建详细过程
  9. Mybatis执行BaseExecutor(二)
  10. JAVA-HashMap实现原理
  11. Hdoj 1875.畅通工程再续 题解
  12. python之工作目录和文件引用
  13. iOS 之地图坐标体系和转换
  14. VirtualBox 报错VERR_VD_IMAGE_READ_ONLY
  15. rabbitMq 教程
  16. CTSC/APIO2018滚粗记
  17. 【虫师讲Selenium+Python】第三讲:操作测试对象
  18. 《C++ Primer Plus》读书笔记之八—对象和类
  19. 《Spring1之第五次站立会议》
  20. kvmgt-kernel 实现GPU虚拟化

热门文章

  1. js对数组进行操作
  2. css中linear-gradient的使用
  3. 分享一个vue常用的ui控件
  4. 搭建 GIT 服务器教程
  5. JavaScript--数据结构与算法之集合
  6. 微信小程序从零开始开发步骤(五)轮播图
  7. Spring 实现数据库读写分离(转)
  8. 洛谷——P2093 零件分组
  9. RecyclerView下拉刷新和载入很多其它
  10. C# 异步延时执行