Bash:2>&1是什么意思?

这个问题在这里已经有了答案:

  • 在shell中,“2>&1”是什么意思? 15个答案

  • 简而言之:它将STDERR上的所有输出重定向到STDOUT

    >是一个重定向操作符,它将以最简单的形式将所有STDOUT重定向到一个文件中。

    test.sh > file
    

    如果前缀>是数字,则使用此示例中特定文件描述符的输出 - 2。 1是stdout,2是stderr。

    test.sh 2> file.err
    

    会将描述符2 = stderr的所有输出重定向到文件。

    如果使用特殊符号&1而不是文件名,则输出不会写入新文件,而是写入具有给定编号的文件描述符,在此情况下为1.因此:

    test.sh 2>&1
    

    从文件描述符2(stderr)重定向到文件描述符1(stdout)

    如果您希望收集所有输出,而不管它发生在何处(标准输出或标准错误)以进行进一步处理,例如管道输入到另一个程序中,这很有用。


    1是stdout。 2是stderr。

    2>&1只是将发送到stderr的所有内容都指向标准输出。

    你会得到更多关于这方面的信息:这里

    链接地址: http://www.djcxy.com/p/25587.html

    上一篇: Bash: what does 2>&1 mean?

    下一篇: What does 1>&2 mean in shell?