日期:2014-05-16  浏览次数:20600 次

Linux 重定向问题
执行命令: sort >namelist<namelist 之后,


谁能详细说明一下为什么namelist变为空的了?

------解决方案--------------------
原因在于在IO中会先把stdout 和stderr的管道准备好,然后再从stdin中读取数据。所以sort >namelist<namelist 执行这句的时候还没有输入namelist已经空了。 你可以试试这个, 打开两个窗口。窗口1执行 echo"123">aa 先创建一个文件。然后窗口2执行 sort>aa 此时窗口2等待输入,此时在窗口1执行 cat aa 可以看到还没有输入任何东西,aa已经空了。