首页 shell命令中的2>&1
文章
取消

shell命令中的2>&1

前言

在shell编程中,我们可以看到许多这样的脚本:

1
command.sh > /dev/null 2>&1 &

对于其中的命令我们应该如何理解,并且如何使用呢?

是什么

2>&1是将标准错误输出重定向到标准输出。每个程序运行后,至少都会打开三个文件描述符,分别是以下三种:

  • 0: 标准输入
  • 1: 标准输出
  • 2: 标准错误输出

那么以上的命令含义就很明确了,将标准错误输出重定向到标准输出中。还有一个问题是为什么在1前面有一个&符号呢?当只有1的时候代表一个文件,使用&表明其是一个文件描述符。

如何使用

将标准错误输出重定向到标准输出有以下三种写法:

  1. 2>&1
  2. >&
  3. &>
本文由作者按照 CC BY-NC-SA 4.0 进行授权

python中Lock与RLock的区别

[译]Go Slices:使用以及原理/Go Slices: usage and internals