使用shell脚本对IP进行批量测速(Ping)
来源:互联网 发布:2016it行业发展前景 编辑:程序博客网 时间:2024/04/23 21:05
因为众所周知的原因,很多人需要在多个IP的国外服务器列表中,找到一个最快的IP来连接。
按最水的方法,一定是一个一个ping一下,看看哪个快,但几十个IP,你能看得过来么?
最近要面试,既然如此,就试着着一个使用linux下小工具实现的批量ping软件吧~
1. 提取IP
假如某网页下的IP是表格形式,某一列为IP,则可以使用awk来提取:
awk 'NR > 1 {print $3}' ip.txt意思是从第二行开始,打印每行的第三列内容。awk简易教程可以看这里:AWK简明教程
2. 从ping 某一个IP提取时间
ping -c 3 baidu.com | awk -F '[ /]' 'NR==1 {ip=$2} $1=="round-trip" {print ip,$8}'
会得到这样的结果:
baidu.com 56.284
ping -c 表示ping 3次。
awk命令,设置分隔为空格和/;当行数为1时(首行)提取第二格内容保存至ip变量;当每行中第一列为"round-trip"时,输出ip和第8格(即平均时长)
3. 并行ping
| while read x ; do ping -c 3 $x & done
& 符号将此任务作为后台程序
4. 排序,将第二列以数字方式排序:
sort -n -k2
总的代码:
cat ip.txt | awk 'NR > 1 {print $3}'| while read x ; do echo `ping -c 3 $x | awk -F '[ /]' 'NR==1 {ip=$2} $1=="round-trip" {print ip,$8}'` & done | sort -n -k2
好吧,好长,可能写成多个命令会更容易理解些
0 0
- 使用shell脚本对IP进行批量测速(Ping)
- shell 编写脚本批量ping ip
- 使用ping命令进行连通性校验的shell脚本
- linux shell 批量mac ping脚本
- linux 自动ping ip的shell脚本
- 使用 Shell 脚本进行 Hadoop Spark 集群的批量安装
- linux使用ping批量测试脚本
- 对shell脚本进行加密
- shell脚本批量telnet ip port
- 使用shell脚本对日志文件进行定时压缩
- Linux:通过shell批量ping网站、ip延迟
- 一个进行连续批量的ping操作的脚本
- 批量ping ip地址
- 批量ping脚本
- 批量ping脚本
- sh脚本:批量ping
- 批量ping脚本
- Python脚本:对文件进行批量重命名
- 发送短信流程图
- uva 10652 Board Wrapping (计算几何-凸包)
- C# WinForm 防止子窗口重复弹出
- WPF入门(02):打造自定义风格的控件
- 按钮动画(一)
- 使用shell脚本对IP进行批量测速(Ping)
- 计算地球上两点的距离
- 纯div+css3代码绘制可爱小女孩
- java去掉字符串空格的方法
- 使用NSUserDefaults保存用户名和密码
- 02 Sprite 图片精灵
- 第一篇(简单的删除特定字符c程序,调试绝对可用)
- VS复制到word中文乱码问题解决
- ubuntu无法进入图形界面