&符号在此bash命令1>&2中表示的是什么?
快速2>&1
将stderr重定向到stdout,但是&符号是什么意思? 我知道如果我们有2 > 1
它会输出到一个名为1
的文件,那么&符号是做什么的?
它将文件描述符1复制到文件描述符2中.FD2是stderr,FD1是stdout,因此它将输出到stderr而不是stdout。
2>&1
将标准错误(文件句柄2)重定向到与标准输出(文件句柄1) 当前要传送的文件相同的文件。
这也是一个与位置有关的事情,所以:
prog >x 2>&1 >y
实际上会发送标准错误到x
和标准输出到y
,如下所示:
x
; x
; y
; &符号属于“1”,因此代码段实际上包含三个部分:“2”,“>”,“&1”。 它们分别表示“从输出流2(这是标准错误)”,“重定向它”和重定向目标(即输出流1)中获取数据。因此,“&”允许您重定向到现有流而不是文件。
链接地址: http://www.djcxy.com/p/25603.html上一篇: What does the ampersand indicate in this bash command 1>&2