2> / dev / null是什么意思?
我想简要解释以下命令行:
grep -i 'abc' content 2>/dev/null
>运算符通常将输出重定向到文件,但它可以是设备。 你也可以使用>>来追加。
如果未指定数字,则会假定标准输出流,但您也可以重定向错误
> file
将stdout重定向到文件
1> file
将stdout重定向到文件
2> file
将stderr重定向到文件
&> file
将stdout和stderr重定向到文件
/dev/null
是一个空设备,它接受你想要的任何输入并抛弃它。 它可以用来抑制任何输出。
简而言之,它将stderr(fd 2)重定向到黑洞(丢弃命令的输出)。
一些更常见的重定向用例:
command > /dev/null 2>&1 &
在后台运行command
,丢弃stdout和stderr
command >> /path/to/log 2>&1 &
运行command
并将stdout和stderr附加到日志文件中。
/dev/null
在Linux / Unix中被视为黑洞,因此您可以将任何内容放入此中,但您无法从/dev/null
获取它。
此外, 2>
表示您将stderr(即2
)重定向到黑洞(即/dev/null
)
你的命令是:
grep -i 'abc' content 2>/dev/null
不要试图用这样的另一个正斜杠结束 – 2>/dev/null/
(它不是目录)。