shell之重定向

来源:互联网 发布:批处理编程 编辑:程序博客网 时间:2024/04/28 20:35
在 shell 程式中,最常使用的 FD (file descriptor) 大概有三个, 分别是: 

0: Standard Input (STDIN)                            <

1: Standard Output (STDOUT)                       >等同1>

2: Standard Error Output (STDERR)                2>


在标准情况下, 这些FD分别跟如下设备关联: 

stdin(0): keyboard  键盘输入,并返回在前端 

stdout(1): monitor  正确返回值 输出到前端 

stderr(2): monitor 错误返回值 输出到前端 

>&和&>

  • 2>&1 意思是把 标准错误输出 重定向到 标准输出. 
  • 1>&2 意思是把标准输出重定向到标准错误输出。
  • &>file 意思是把 标准输出 和 标准错误输出 都重定向到文件file中
  eg:grep da * > greplog1 
           grep da * > greplog2 1>&2    
     grep da * > greplog3 2>&1  //grep da * 2> greplog4 1>&2 结果一样 
      #查看greplog1会发现里面只有正常输出内容 
      #查看greplog2会发现里面什么都没有 
      #查看greplog3会发现里面既有正常输出内容又有错误输出内容

0 0
原创粉丝点击