bash ping -c 1 -w 1 ${network}.${sitenu} &> /dev/null && result=0 || result=1
答案:3 悬赏:50
解决时间 2021-02-10 17:44
- 提问者网友:无悔疯狂
- 2021-02-10 01:28
bash ping -c 1 -w 1 ${network}.${sitenu} &> /dev/null && result=0 || result=1
最佳答案
- 二级知识专家网友:深街酒徒
- 2021-02-10 02:49
ping -c 1 -w 1 ${network}.${sitenu} &> /dev/null
相当于
ping -c 1 -w 1 ${network}.${sitenu} > /dev/null 2>&1
2是标准错误(就是错误信息)
1是正常输出(正常结果)
他们的意思就是把ping -c 1 -w 1 ${network}.${sitenu} 执行完输出的东西都放入/dev/null里
不管出错了,还是正常ping通了,只要是输出到屏幕的信息都放入/dev/null里
/dev/null是个垃圾站
不要的东西都可以往这放
2>&1意思?
就是标准错误像正常输出一样输出
例:
假如现在/root/ace下是个空目录
#mkdir test.log
#echo "test" >test.log
#cat abc >test.log
cat: abc: No such file or directory
#cat test.log
#cat abc >test.log 2>&1
#cat test.log
cat: abc: No such file or directory
#echo "abcabc" >abc
#cat abc >test.log 2>&1
abcabc
看明白了么?没看明白就执行试试
其实,
我们做cat abc >test.log时
我们都省略了1
正常应该这么写
cat abc 1>test.log
相当于
ping -c 1 -w 1 ${network}.${sitenu} > /dev/null 2>&1
2是标准错误(就是错误信息)
1是正常输出(正常结果)
他们的意思就是把ping -c 1 -w 1 ${network}.${sitenu} 执行完输出的东西都放入/dev/null里
不管出错了,还是正常ping通了,只要是输出到屏幕的信息都放入/dev/null里
/dev/null是个垃圾站
不要的东西都可以往这放
2>&1意思?
就是标准错误像正常输出一样输出
例:
假如现在/root/ace下是个空目录
#mkdir test.log
#echo "test" >test.log
#cat abc >test.log
cat: abc: No such file or directory
#cat test.log
#cat abc >test.log 2>&1
#cat test.log
cat: abc: No such file or directory
#echo "abcabc" >abc
#cat abc >test.log 2>&1
abcabc
看明白了么?没看明白就执行试试
其实,
我们做cat abc >test.log时
我们都省略了1
正常应该这么写
cat abc 1>test.log
全部回答
- 1楼网友:输掉的尊严
- 2021-02-10 04:08
&> /dev/null
就是标准正确输出1与标准错误输出2都丢弃的意思。
等同于 >/dev/null 2>&1
其实,后一种方法更通用。
- 2楼网友:厭世為王
- 2021-02-10 03:31
执行ping -c 1 -w 1 ${network}.${sitenu} &> /dev/null
如果成功, result=0
否则, result=1
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯