当前位置: > Linux教程 > linux基础 >

linux文件描述符与输入输出重定向

时间:2014-08-08 02:12来源:linux.it.net.cn 作者:it

文件描述符(file descriptor)
每个进程都有打开的一组文件,这些打开的文件保存在一个数组中。文件描述符即保存在此数组的索引中。

最低可用文件描述符(lowest_available_fd)
当打开一个文件时,内核为此文件安排的文件描述符总是此数组中最低可用文件描述符。
文件描述符通过exec调用传递,且不会被改变。

标准输入文件描述符是0  标准输出文件描述符是 1  标准输出文件描述符是 2     
unix假设文件描述符0、1、2都已经被打开,并且都连接到终端设备上。可以分别进行读写操作。
大多数程序将结果输出到文件描述符1,将错误消息输出到文件描述符2。

若是想修改程序的输入输出就必须修改相应的文件描述符。将0、1、2绑定到不同的文件即可实现重定向。

程序默认是从标准输入读取数据,将文件描述符0绑定到一个文件。即可实现从文件读取数据。
实际上,进程并不是从文件读取数据,而是从文件描述符读取数据。
如果文件描述符0定位到一个文件,那么这个文件就是标准输入的源。

(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容