- 論壇徽章:
- 0
|
本帖最后由 p0w3r 于 2014-03-12 21:06 編輯
03/12 更新
- IP=$(ifconfig eth0.2 | grep 'inet addr:' | grep Bcast | awk '{print $2}' | awk -F: '{print $2}')
- mentps=$(ps | grep mentohust | grep -v grep | awk '{print $1}')
- if [ $IP ] && [ -n "$mentps" ] ; then
- ping -c 2 10.21.110.254 #> /dev/null
- RET=$? #&& echo $RET && sleep 2
-
- while [ $RET -eq 1 ]
- do
- echo "Running mentohust" && mentohust -k && mentohust && sleep 2
- ping -c 2 10.21.110.254 > /dev/null
- RET=$?
- done
- else # [ $RET = 0 ] ; then
- echo " Mentohust Run ! "
- fi
復(fù)制代碼 上面這個(gè)代碼我看不出問(wèn)題了. 各位大俠指點(diǎn)一下.
我的用途是 如果網(wǎng)卡有獲取IP , 然后沒(méi)有mentohust這個(gè)進(jìn)程的話就執(zhí)行下面的命令 (貌似說(shuō)廢話了)
之后通過(guò)ping 看網(wǎng)卡是否ping通 , 如果不通就獲取$? 的值 ,如果是 "1 " 就執(zhí)行循環(huán) .
然后 如果 $? 的值是 " 0 " 的話說(shuō)明已經(jīng)通了 就結(jié)束.
現(xiàn)在問(wèn)題是 運(yùn)行了腳本之后, 沒(méi)信息返回 .
===========================分割===================================- ret=$?
- if [ $IP ] && [ -n $mentps ] ; then
- ping -c 2 10.21.110.254 > /dev/null
- until (($ret))
- do
- [ $ret -eq 0 ] && (mentohust -k) && mentohust
- ping -c 2 10.21.110.254 > /dev/null
- done
- else
- echo " Not getting an IP via DHCP ! "
- fi
- WebTEST=$(curl -s baidu.com | grep "219.136.125.139")
- if [ -n $WebTEST ] ; then
- WebAuth
-
- fi
復(fù)制代碼 我是打算通過(guò) ping 是否成功所輸出的 $? 來(lái)判斷是否同問(wèn)是暢通的. 如果ping 不通會(huì)返回 1 .然后循環(huán). 但是貌似 until 后面跟的 變量貌似不行 .一直都在循環(huán) |
|