> / dev / null 2>& 1是什么意思?

时间:2012-11-27 02:32:26

标签: shell scripting null

diff file1 file2 >/dev/null 2>&1

我知道这是做什么的。它正在运行命令diff,它会检查其退出状态,忽略diff的输出。

我只是不知道这部分是什么意思:

>/dev/null 2>&1

什么是> 和&

(不确定这些是什么,所以我看不出来) (这是在Bourne Shell中)

2 个答案:

答案 0 :(得分:4)

>/dev/null将标准重定向到/dev/null,即抛弃输出。 2>&1将标准错误重定向到标准输出;在这种情况下,它意味着也将所有错误输出抛弃。您可以谷歌搜索shell输出重定向以获取更多信息。

答案 1 :(得分:0)

此外,由于只需要退出状态,因此可以将此命令简化为该命令,而不需要将其输出重定向到位桶:

cmp -s file1 file2