Answers:
grep丢弃ping输出的要点是,编写者只需要返回状态为grep。他/她只想知道模式是否匹配。就您而言,最后一个grep检查先前命令的输出是否包含以开头的任何行200。
在现代POSIX系统中,您可以使用grep -q完成所有操作,而无需重定向到/dev/null:
... | grep -q '^200'
请注意,使用grep -q具有较小的副作用,感谢StéphaneChazelas在评论中指出。grep -q找到第一个匹配项licenseTool后立即grep退出,如果退出后仍然写东西,它将收到SIGPIPE。
grep -q是最近才添加的;许多脚本仍在使用,> /dev/null因为那是您在冰河时代(即1995年)所拥有的全部。
-q选项似乎不合适...因为您希望它通过检查退出状态来了解错误。
grep -q使用更少的CPU