while ping -c 1 $IPADDR &> /dev/null
&> /dev/null
是什么意思?
将标准输入输出重定向到“黑洞”,即不输出,可以参考这个很具体Difference between 2>&-, 2>/dev/null, |&, &>/dev/null and >/dev/null 2>&1
7 回答5.6k 阅读
4 回答4.2k 阅读
2 回答955 阅读✓ 已解决
2 回答3.5k 阅读
1 回答1.2k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
1 回答533 阅读✓ 已解决
&>
相当于&1>
,是指将标准输出重定向到/dev/null
。/dev/null
相当于垃圾箱,这么写,ping的输出将不会输出在屏幕上。也可以省略&
,写成> /dev/null
。但对于标准错误,不能省略,必须写成&2
。另外,在unix系统中,任何进程在启动时,默认打开3个描述符,分别为0,1,2,表示标准输入、标准输出和标准错误,默认情况下,这三个描述符指向终端。shell提供一种重定向的写法,支持将这三种描述符重定向到其他地方。