下面的shell 是什么意思?

while ping -c 1 $IPADDR &> /dev/null

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

阅读 4.4k
6 个回答

&>相当于&1>,是指将标准输出重定向到/dev/null/dev/null相当于垃圾箱,这么写,ping的输出将不会输出在屏幕上。也可以省略&,写成> /dev/null。但对于标准错误,不能省略,必须写成&2

另外,在unix系统中,任何进程在启动时,默认打开3个描述符,分别为0,1,2,表示标准输入、标准输出和标准错误,默认情况下,这三个描述符指向终端。shell提供一种重定向的写法,支持将这三种描述符重定向到其他地方。

这个&>就代表把标准输出和标准错误重定向到/dev/null。详细的可man bash,然后搜索&>

不要这内容比较优雅(maybe?)的写法

不在屏幕上显示左边语句缠身的标准输出或者错误

将输出结果重定向到空

将标准输出重定向到 /dev/null呗,即完全忽略标准输出的内容。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题