- 论坛徽章:
- 0
|
##############################
#134.1.1.x1 网点一
#134.1.1.x2 网点二
#134.1.1.x3 网点三
#134.1.1.x4 网点四
#134.1.1.x5 网点五
.............
..............
............
........
##############################
#!/bin/sh
while read ip ; do
ping -c 5 $ip &
sleep 2 && echo "\033[1m*** time is over, terminate $ip ***\033[m"
ps -ef | awk -v pat="ping.*$ip" '$0 ~ pat {print $2}' | xargs kill -9
done <<EOF
134.1.1.x1
134.1.1.x2
134.1.1.x3
134.1.1.x4
134.1.1.x5
.............
..............
............
........
EOF
经过你的指点,使我运用了以上的程序,大大地提高了工作效率,真要谢谢你了
以前我用手工ping 一个网点,要中断一个,很不方便。所以曾经也想用循环方式ping一个网点然后用$?判断是网点还在使用,但是在线网点ping -c 2,经过2
秒马上能退出返回,可以进入下一个网点判断。而网点断网了的话,那就不会在2秒后马上退出,也就是ping -c 2不起作用,它要经过很长时间退出,才会得到$?值,而我ping的地址很多,效率及低,而且我的目的是在营业结束后,调查还有几个网点在线,要是所有网点都断线了,我就可以日终了,因此这个方法不可取,而手工的方法虽然比这个快点难很麻烦,又要丢ping网点。而现在用上了你的方法使我方便及了!!!!
但是我现在还有一些想法,不知能不能实现,还想完美一点,还要向你请教!!!!
即我在运用这个程序时
屏幕上不想出现ping的信息即:ping 134.1.1.x(125.1.1.x):56 data bytes
64 bytes from 134.1.1.x:icmp_seq=0 ttl=255 time=0 ms
我想来的直观一点,只要有以下信息:
网点一 在线
网点二 断线
网点三 断线
........ ...
........ ....
换而言之,既要用上你上面的程序,但也要加上 $?判断语法,两者能不能结合起来呢,要是这样又不失效率,又直观,那多么好啊!!!!
你认为我的想法行吗???
再次谢谢你!!!!!!!!!! |
|