您的位置:首页 > 运维架构 > Linux

linux 重定向 1>&2 2>&1的各种变形理解

2016-05-12 21:59 323 查看
ll a.txt b.txt 将输出一条标准输出和一条标准错误。

如下:

/bin/ls: b.txt: No such file or directory (用A表示)

-rw-r–r– 1 mqq mqq 6 2016-05-12 11:58 a.txt (用B表示)

下面讨论各种变形的输出结果和原因:

1、ll a.txt b.txt 1>file 2>&1 file内容A和B 屏幕内容无 (因为标准输出定向到文件,标准错误定向到标准输出,所以也定向到文件)

2、ll a.txt b.txt 2>&1 1>file file内容B 屏幕输出A (因为标准错误定向到了标准输出即屏幕,标准输出定向到文件)

3、ll a.txt b.txt 2>file 1>&2 file内容A和B 屏幕内容无(因为标准错误定向到文件,标准输出定向到标准错误,所以也定向到文件)

4、ll a.txt b.txt 1>&2 2>file file内容A 屏幕输出B(因为标准输出定向到了标准错误及屏幕,标准错误定向到文件)

5、ll a.txt b.txt 1>file 1>&2 file内容无 屏幕内容A和B (因为标准输出定向到文件,标准输出又定向的标准错误即屏幕,覆盖了1>file,所以file内容无)

6、ll a.txt b.txt 2>file 2>&1 file内容无 屏幕内容A和B (因为标准错误定向到文件,标准错误又定向到标准输出即屏幕,覆盖了2>file,所以file内容无)

测试结果如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: