标准输入输出:

  文件描述符是一个简单的正整数,用以标明每一个被进程所打开的文件和socket。最前面的三个文件描述符(0,1,2)分别与标准输入(stdin),标准输出(stdout)和标准错误(stderr)对应。

    0表示标准输入
    1表示标准输出
    2表示标准错误输出

    >默认为标准输出重定向,与 1>相同

2>&1意思是把 标准错误输出 重定向到 标准输出

&>file意思是把 标准输出 和 标准错误输出 都重定向到文件file中。

2>&1 > file 把错误出定向到标准输出(此时标准输出为终端,所以输出到终端), 标准输出定位到文件

> file 2>&1 把标准输出定位到文件,错误输出到标准输出(此时标准输出指向文件,所以输出到文件)

例如:

[root@N1 ~]# cat tt.txt
cat: tt.txt: No such file or directory
[root@N1 ~]# cat tt.txt &>err.txt
[root@N1 ~]# cat err.txt 
cat: tt.txt: No such file or directory
[root@N1 ~]#