linux中的流重定向小结

在linux的shell中,输入输出分为3部分:

  • 标准输入(stdin):代码为0,使用<或<<
  • 标准输出(stdout):代码为1,使用>或>>
  • 标准错误输出(stderr):代码为2,使用2>或2>>

标准输出(stdout)

  这个比较容易懂,

  • 1> 或者 > -------- 覆盖的方法将正确的数据输出到指定的文件或设备上。
  • 1>>或者>> ------ 累加的方法...

比如:cat file1 > file2

标准错误输出(stderr)

  类似的:

  • 2> ------- 覆盖的方法...
  • 2>> ------累加的方法...

比如 cat file1 > file2 2> file3

特殊情况

  • 将错误信息扔掉不要 cat file1 > file2 2> /dev/null
  • 将标准输出和错误输出到一个文件里面  cat file1 2>&1 file2

标准输入(stdin)

   < ------- 将原本需要由键盘输入的数据改由文件内容来替代

比如:

  cat > catfile < ~/.bashrc
这个时候,~/.bashrc的内容就被定向到catfile。使用~/.bashrc代替了键盘输入。

  << ------ 代表的是结束输入的意思

比如:cat > catfile << "eof"

>This is a test
>OK now stop
>eof  -------------输入这个关键字,立刻就结束而不需要输入[ctrl]+d.

posted @ 2011-11-13 16:44  Jack204  阅读(314)  评论(0编辑  收藏  举报