bash中">"和"&>"有什么区别?

ava*_*sin 8 linux bash console

在bash中我们有3种流类型:

  • 0(STDIN)
  • 1(STDOUT)
  • 2(STDERR)

因此,在执行某些程序时,我可以使用管理这些流(例如,我可以将它们从控制台重定向到文件或smth,如/ dev/null等):

命令>/dev/null(仅显示STDERR中的错误,STDOUT将移至/ dev/null)命令2>/dev/null(将显示enly STDOUT,STDERR将移至/ dev/null)

我看到有些人写命令&>/dev/null

bash中">"和"&>"之间有什么区别?

cni*_*tar 12

bash中">"和"&>"之间有什么区别?

这是重定向既是bashism stdoutstderr.它也可以通过更便携来实现:

command > file 2>&1
Run Code Online (Sandbox Code Playgroud)