shell 获取指定ip的丢包率

  • 丢包率大于10%就重新网络

使用sed 替换字符串

[[ $(ping -c 10 -W 1 baidu.com | awk '$6 ~ /%/{print $6}'|sed s/%//g) -ge 10 ]] && systemctl restart network

使用awk split分割字符串

[[ $(ping -c 20 -W 1 223.5.5.5| awk '$6 ~ /%/{split($6,p,"%");print p[1]}') -ge 10 ]] && systemctl restart network

使用awk substr截取字符串

test $(ping -c 10 -W 1 223.5.5.5 |awk '$6 ~ /%/{print substr($6,0,length($6)-1)}') -ge 10 && echo 丢包率大于10%

使用awk gsub替换字符串

test $(ping -c 10 -W 1 223.5.5.5 |awk '$6 ~ /%/{gsub("%","",$6);print $6}') -ge 10 && echo 丢包率大于10%

gsub函数则使得在所有正则表达式被匹配的时候都发生替换。gsub(regular expression, subsitution string, target string);简称 gsub(r,s,t)。

正则表达式

字符 功能
+ 指定如果一个或多个字符或扩展正则表达式的具体值(在 +(加号)前)在这个字符串中,则字符串匹配。命令行:awk '/smith+ern/' testfile将包含字符 smit,后跟一个或多个 h 字符,并以字符ern 结束的字符串的任何记录打印至标准输出。此示例中的输出是:smithern, harry smithhern, anne
? 指定如果零个或一个字符或扩展正则表达式的具体值(在 ?(问号)之前)在字符串中,则字符串匹配。命令行:awk '/smith?/' testfile将包含字符 smit,后跟零个或一个 h 字符的实例的所有记录打印至标准输出。此示例中的输出是:smith, alan smithern, harry smithhern, anne smitters, alexis
| 指定如果以 |(垂直线)隔开的字符串的任何一个在字符串中,则字符串匹配。命令行:awk '/allen | alan /' testfile将包含字符串 allenalan 的所有记录打印至标准输出。此示例中的输出是:smiley, allen smith, alan
( ) 在正则表达式中将字符串组合在一起。命令行:awk '/a(ll)?(nn)?e/' testfile将具有字符串 aealleanneallnne 的所有记录打印至标准输出。此示例中的输出是:smiley, allen smithhern, anne
{m} 指定如果正好有 m 个模式的具体值位于字符串中,则字符串匹配。命令行:awk '/l{2}/' testfile打印至标准输出smiley, allen
{m,} 指定如果至少 m 个模式的具体值在字符串中,则字符串匹配。命令行:awk '/t{2,}/' testfile打印至标准输出:smitters, alexis
{m, n} 指定如果 m 和 n 之间(包含的 m 和 n)个模式的具体值在字符串中(其中m<= n),则字符串匹配。命令行:awk '/er{1, 2}/' testfile打印至标准输出:smithern, harry smithern, anne smitters, alexis
[String] 指定正则表达式与方括号内 String 变量指定的任何字符匹配。命令行:awk '/sm[a-h]/' testfile将具有 sm 后跟以字母顺序从 ah 排列的任何字符的所有记录打印至标准输出。此示例的输出是:smawley, andy
[^ String] 在 [ ](方括号)和在指定字符串开头的 ^ (插入记号) 指明正则表达式与方括号内的任何字符不匹配。这样,命令行:awk '/sm[^a-h]/' testfile打印至标准输出:smiley, allen smith, alan smithern, harry smithhern, anne smitters, alexis
~,!~ 表示指定变量与正则表达式匹配(代字号)或不匹配(代字号、感叹号)的条件语句。命令行:awk '$1 ~ /n/' testfile将第一个字段包含字符 n 的所有记录打印至标准输出。此示例中的输出是:smithern, harry smithhern, anne
^ 指定字段或记录的开头。命令行:awk '$2 ~ /^h/' testfile将把字符 h 作为第二个字段的第一个字符的所有记录打印至标准输出。此示例中的输出是:smithern, harry
$ 指定字段或记录的末尾。命令行:awk '\(2 ~ /y\)/' testfile将把字符 y 作为第二个字段的最后一个字符的所有记录打印至标准输出。此示例中的输出是:smawley, andy smithern, harry
. (句号) 表示除了在空白末尾的终端换行字符以外的任何一个字符。命令行:awk '/a..e/' testfile将具有以两个字符隔开的字符 a 和 e 的所有记录打印至标准输出。此示例中的输出是:smawley, andy smiley, allen smithhern, anne
*(星号) 表示零个或更多的任意字符。命令行:awk '/a.*e/' testfile将具有以零个或更多字符隔开的字符 a 和 e 的所有记录打印至标准输出。此示例中的输出是:smawley, andy smiley, allen smithhern, anne smitters, alexis
 (反斜杠) 转义字符。当位于在扩展正则表达式中具有特殊含义的任何字符之前时,转义字符除去该字符的任何特殊含义。例如,命令行:/a///将与模式 a // 匹配,因为反斜杠否定斜杠作为正则表达式定界符的通常含义。要将反斜杠本身指定为字符,则使用双反斜杠。有关反斜杠及其使用的更多信息,请参阅以下关于转义序列的内容。

shell 获取指定ip的丢包率的更多相关文章

  1. [转]网络性能评估工具Iperf详解(可测丢包率)

    原文链接:安全运维之:网络性能评估工具Iperf详解:http://os.51cto.com/art/201410/454889.htm 参考博文:http://linoxide.com/monito ...

  2. zabbix使用ICMP Ping模版实现对客户端网络状态的监控,监控丢包率、响应时间

    参考网站: https://www.cnblogs.com/saneri/p/6706578.html 使用fping报错注意事项: https://blog.csdn.net/oqqssh/arti ...

  3. 无线路由器wds桥接技术+丢包率

    半根毛线http://www.cnblogs.com/hsd-/ 今天下午鼓捣了一下无线路由的wds桥接 算是计算机网络的作业 码来分享一下 1.首先设置主路由 我的主路由是斐讯4线 路由ip为192 ...

  4. 用ping命令简单的测试 延时、抖动、丢包率

    在DOS命令状态下输入 :ping 202.105.135.211 -t (连续的对该IP地址执行Ping命令,直到被用户以Ctrl+C中断)就会得到下面的结果:Pinging 202.105.135 ...

  5. [转载]UDP丢包率提升

    UDP丢包及无序问题 转载自:http://hi.baidu.com/gamedot/item/96cb9bf1a717eb14d6ff8cd5 最近在做一个项目,在这之前,做了个验证程序. 发现客户 ...

  6. java_获取指定ip的定位

    因为自己网站后台做了一个进站ip统计,之前只是获取了ip,这次优化了下,把ip的大致区域弄出来了 废话不多说,进正题 首先要用到几个网络大头的api 淘宝API:http://ip.taobao.co ...

  7. RFC2544丢包率测试——信而泰网络测试仪实操

    文章关键词:RFC2544.丢包率.吞吐量. 丢包率概述: 丢包率(Frame Loss Rate)测试的目的是确定DUT在不同的负载和帧长度条件下的丢包率.在稳定负载下,由于网络设备资源缺乏,应该正 ...

  8. C#获取指定IP地址的数据库所有数据库实例名

    /// <summary> /// 获取指定IP地址的数据库所有数据库实例名. /// </summary> /// <param name="ip" ...

  9. zabbix使用fping监控任意两个节点之间的网络质量、丢包率和响应时间

    zabbix使用fping监控任意两个节点之间的网络质量.丢包率和响应时间 之前的博文 使用zabbix3..4的ICMP Ping模版实现对客户端网络状态的监控 https://www.cnblog ...

随机推荐

  1. 如何将 HTML 转换为 XHTML

    1.添加一个 XHTML <!DOCTYPE> 到你的网页中 2.添加 xmlns 属性添加到每个页面的html元素中 3.改变所有的元素为小写 4.关闭所有的空元素 5.修改所有的属性名 ...

  2. (二)XML基础(2)

    三.解析 服务端解析 JDK:            DOM            SAX            JAXB    java and xml Binding 开源(一般都是用开源的)   ...

  3. C#通过地址获取省市区(基于百度地图API)

    最近公司有个需求,想通过地址获取对应的省市区,本来想直接通过对地址的截取,对于完整的地址还可以,不完整的就没法用了 所以本篇通过百度地图API来获取地址 第一步:申请ak密钥 登录百度地图开放平台,按 ...

  4. VMware Workstation中虚拟机与windows10共享文件夹

    设置共享文件夹之前需要确定已经安装VMware Tools 1.在windows桌面新建一个名为share_folder的文件夹用来共享 2.右键点击虚拟机的名字,在弹出的菜单中选择设置 弹出对话框 ...

  5. python2,3区别

      Python2 Python3 default charset ascii(can change) utf-8 print 可不加括号 必须加 range 有xrange()生成器 可转换为ran ...

  6. pycharm2017.3版本永久激活

    1.下载破解文件 链接:https://pan.baidu.com/s/1nwI278l 密码:j3gt 2.修改检测文件 ,在文件后缀是vmoptions的 文件中加入(注意是文件中,不是文件后缀上 ...

  7. 14_sqoop数据导入

    3.Sqoop的数据导入 “导入工具”导入单个表从RDBMS到HDFS.表中的每一行被视为HDFS的记录.所有记录都存储为文本文件的文 本数据(或者Avro.sequence文件等二进制数据) 3.1 ...

  8. js中对new Date() 中转换字符串方法toLocaleString的使用

    提供特定于区域设置的日期和时间格式. dateTimeFormatObj = new Intl.DateTimeFormat([locales][, options]) dateTimeFormatO ...

  9. 用js刷剑指offer(二进制中一的个数)

    题目描述 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 牛客网链接 思路 如果一个整数不为0,那么这个整数至少有一位是1.如果我们把这个整数减1,那么原来处在整数最右边的1就会变为 ...

  10. n诺挑战赛5题解

    Drinking 题意:就是给你n瓶酒的初始伤害值,第几天喝这瓶酒伤害值就是这瓶酒的初始伤害值第几倍,而且他每天喝的瓶数不超过m.要你输出所有的情况,就是他喝(1~n)瓶的伤害值的最小, 思路:就是这 ...