水电工888 发表于 2018-8-25 11:39:06

shell 写入标准错误 write in stderr-Ken

  标准输出和标准错误的中定向如下:
  


[*]echo "something" > stdoutfile 2> stderrfile
  

  但是如何将信息写入标准错误呢?如下:
  


[*]echo "something..." > /dev/stderr
  

  如下测试:

  可以看到,将标准输出重定向到文件tt并不能把写入标准错误的aaaa写入tt文件。
  C中实现写入标准错误:
  当一个程序开始运行时,一般会有三个已经打开的文件描述符,0-标准输入;1-标准输出;2-标准错误。然后调用函数write()即可写入相应的文件描述符中。
  


[*]#include
[*]#include
[*]
[*]int main()
[*]{
[*]    if((write(1,"abc\n",4)) != 4){
[*]      write(2,"ERROR\n",6);
[*]    }
[*]}
  



页: [1]
查看完整版本: shell 写入标准错误 write in stderr-Ken