mib*_*zer 8 shell io-redirection
我不明白下面的if条件。我知道这/dev/null 2 > &1是将输出发送到错误流(如果我错了,请纠正我)。但是当它处于某种if状态时我不明白
if /usr/bin/egrep -e "$param1" -e "$param2" -e "param3" ${file} > /dev/null 2>&1
then
bla blaRun Code Online (Sandbox Code Playgroud)
dan*_*ann 17
的if只是感兴趣上的grep的退出代码(无论它发现了一些线相匹配的条件下),但不grep命令的输出,因此它重定向所有输出到/ dev / null,这意味着不通。
此重定向发生在两个部分:
> /dev/null 将标准输出重定向到任何地方,即 egrep 通常输出的行 2>&1将错误输出也重定向到与标准输出相同的位置,即 /dev/null;这是为了抑制来自 egrep 的错误消息。