/dev/null

/dev/null 代表 null 设备,这会忽略掉所有的输入,即不会展示。

所以,

command > /dev/null

表示将命令的输出结果输入到 /dev/null,即忽略掉命令的输出。

常见的形式还有

command > /dev/null 2>&1

其中,

  • 2 表示 stdrr
  • 1 表示 stdout
  • by the way, 0 表示 stdin
  • & 表示后面跟的是文件描述(file descriptor)而不是文件名
  • 因为 1 是 stdout,所以 2>&1 表示将 stderr 输出到和 stdout 相同的地方
  • 等效为 2> /dev/null

上述命令完整的意思就是,因为不需要展示,将命令的执行结果扔到 /dev/null,同时将 stderr 扔到 stdout 一样的地方。

常用在不关心命令执行结果的情况下。