On Mon, Jun 11, 2012 at 05:44:14PM +0800, yeji wrote: > 在学习linux的时候,我遇到以下几个问题不懂,请大家指点迷津 > 1、标准输入、输出缺省情况下对应键盘,显示器,那么标准错误缺省情况下,错 > 误信息是输出到什么地方? > 2、在默认的情况下,unix为每个进程提供3个预定义的文件描述符,默认的文件描 > 述符是0代表标准输入、1代表标准输出、2代表标准错误。那么 向语句 > calculate > 8>results还是标准输出吗?results是文件名。如果不是的话,那么如何理解 > sort1>results是标准输出,这里也重定 > 向了啊,不是缺省的显示屏,不是的原因 > 是什么?如果是的话,那么如何理解1代表标准输出?这里的标准输入与标准输 > 出、标准错误与文件描述符有什么 联系? > 谢谢
你的邮件在我这里排版有点乱,不过我想我大约知道了你的问题。 > 2、在默认的情况下,unix为每个进程提供3个预定义的文件描述符,默认的文件描 > 述符是0代表标准输入、1代表标准输出、2代表标准错误。那么 向语句 我不喜欢「代表」这个词。在这里,我更愿意使用「称为」。而你举例中的文件描 述符 8 是没有名字的。那个 shell 语法只是为 calculate 进程以写方式打开了 一个文件描述符为 8 的文件而已。 还有,我觉得 0-2 这三个文件描述符不是 Unix 为进程「提供」的,而是继承而 来的(启动或者登录过程中某进程打开的)。这三个文件描述符的功能也是约定的。 -- Best regards, lilydjwg Linux Vim Python 我的博客: http://lilydjwg.is-programmer.com/ -- A: Because it obfuscates the reading. Q: Why is top posting so bad? -- ubuntu-zh mailing list ubuntu-zh@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-zh