bash 中的输入输出重定向

bash 中的输入输出重定向

在 Ksh 中,用于将命令的 i/o 重定向到标准输出/错误之外,我这样做,[其中命令是产生输出/错误的任何命令]

command 2>filename
command 2>/dev/null

或者

command &>filename
command &>/dev/null

在 bash 中,我经常看到这样的代码

command >&/dev/null

&当可以通过使用完成相同的操作时,这个附加意味着什么

command> /dev/null

我知道我错过了一些好东西,但很高兴学习。

编辑:我知道 2>&1 是什么,即所谓的重复问题,我被告知 1 表示文件描述符,因此我们需要一个 & 来引用它。我很困惑地看到文件名前面的 & 。于是就有了这个问题。

答案1

>&fname

是相同的

>fname 2>&1

即它重定向两个都stdout 和 stderr 写入文件fname。有关详细说明,请参阅bash(1)手册页部分REDIRECTION(尤其是其部分)。Redirecting Output

相关内容