网站首页 > 技术教程 正文
序言:
Windows系统中批量ping地址时我们常用PingInfoView工具,简单方便实用;而linux中想批量pingIP地址,就得使用脚本了,这里小编和大家分享一个ping脚本。
首先奉上shell脚本,不想编写的可以私信联系获取shell脚本,直接拷贝到centos中运行。
#! /bin/bash
for i in `cat iplist`
do
ping=`ping -c 3 $i|grep loss|awk '{print $6}'|awk -F "%" '{print $1}'`
if [ $ping -eq 0 ];then
echo ping $i ok
else
echo ping $i fail
fi
done
命令解释:
1、ping.sh脚本和脚本中要读取IP地址的iplist文件在同一个目录。
2、使用awk命令提取ping IP返回后丢失loss的百分比数字是100还是0。
ping.sh脚本第4行详解:
ps:这边因为-c 3是ping3个包,且不考虑有丢包的情况,也可以直接-c 1,直接ping 1个包。
3、if语句是比较awk取的值是否为0的,也有比较100的,理论是一样的。但是我自己测试ping IP地址有3种返回值。
第一种、网络正常,0%丢包。
第6列awk命令提取的值为0
第二种、网络不通,100%丢包。
第6列awk命令提取的值为100
第三种、网络不通,100%丢包,但中间多了2列参数。
第6列awk命令提取的值为+3
综上所述,awk命令第一次使用时取第6列值,且和数值0比较(if=0网络ok,else网络fail),前面两种是没问题,遇到第3种情况:+3是≠0的,满足else条件,网络fail;
若awk取值与100比较(if=100网络fail,else网络ok),前面两种是没问题,那么遇到第三种结果为:+3≠100,所以满足else结果,网络ok,但其实上图的192.168.3.254是ping不通的。
结论:所以if语句应该和数值0比较,这样更准确。
猜你喜欢
- 2025-07-07 Linux常用场景-VIM文本编辑批量替换
- 2025-07-07 Linux 下使用 killall 命令终止进程的 8 大用法
- 2025-07-07 告别Permission denied!手把手教你玩转Linux文件权限
- 2025-07-07 [Linux Shell]批量更改文件&文件夹 名大写为小写
- 2025-07-07 一键批量关闭 Linux 的 tty 的方法
- 2025-07-07 Docker 一键清盘术,释放磁盘空间不求人
- 2025-07-07 Linux 快速安装当前目录及子目录下的所有字体
- 2025-07-07 这个Linux命令让我的工作效率提升了300%
- 2025-07-07 简单方法实现文件批量重命名,一行命令,安全又快捷。
- 2025-07-07 批量提取文件名的几种方法,第一种最简单常用
你 发表评论:
欢迎- 最近发表
-
- 搞懂linux awk的使用(linux awk $1)
- ZYNQ QSPI flash分区设置&启动配置
- Linux 的 18 个装 B 命令,记得全部搂一遍
- 【Linux】程序执行的黑魔法:五分钟彻底搞懂 Linux ELF 文件
- 聊一聊 Linux 上对函数进行 hook 的两种方式
- 第十二节 Ubuntu 系统 Docker 镜像安装与容器运行指南
- Linux常用场景-VIM文本编辑批量替换
- Linux 下使用 killall 命令终止进程的 8 大用法
- 告别Permission denied!手把手教你玩转Linux文件权限
- [Linux Shell]批量更改文件&文件夹 名大写为小写
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)