比如现在需要对172.16.50.0/24网段的ip进行检查,检查哪些ip现在被占用,哪些ip没有被占用,可以通过ping命令来检查,脚本如下:

[root@uatdns01 opt]# vim /opt/ping.sh

#!/bin/bash

. /etc/init.d/functions

for var in {1..254};

do

ip=172.16.50.$var

ping -c2 $ip >/dev/null 2>&1

if [ $? = 0 ];then

action "$ip" /bin/true

else

action "$ip" /bin/false

fi

done

[root@uatdns01 opt]# chmod 755 /opt/ping.sh

[root@uatdns01 opt]# sh /opt/ping.sh

172.16.50.1 [ OK ]

172.16.50.2 [FAILED]

172.16.50.3 [FAILED]

172.16.50.4 [FAILED]

172.16.50.5 [FAILED]

.........

.........

172.16.50.99 [ OK ]

172.16.50.100 [ OK ]

172.16.50.101 [ OK ]

172.16.50.102 [ OK ]

172.16.50.103 [ OK ]

172.16.50.104 [ OK ]

172.16.50.105 [ OK ]

172.16.50.106 [ OK ]

172.16.50.107 [ OK ]

172.16.50.108 [ OK ]

172.16.50.109 [ OK ]

172.16.50.110 [ OK ]

172.16.50.111 [FAILED]

172.16.50.112 [ OK ]

获取172.16.60.0/24网段可用ip的shell脚本

[root@ansible-server ~]# cat ip_ping.sh

#!/bin/bash

ip=1

while [ $ip != "254" ]; do

ping 172.16.60.$ip -c 2 | grep -q "ttl=" && echo "172.16.60.$ip yes" || echo "172.16.60.$ip no"

ip=`expr "$ip" "+" "1"`

done

执行:

[root@ansible-server ~]# sh ip_ping.sh

172.16.60.1 yes

172.16.60.2 no

172.16.60.3 no

.............

172.16.60.24 yes

172.16.60.25 yes

172.16.60.26 no

.............

如果只打印可用ip, 则脚本修改如下:

[root@ansible-server ~]# cat ip_ping.sh

#!/bin/bash

ip=1

while [ $ip != "254" ]; do

ping 172.16.60.$ip -c 2 | grep -q "ttl=" && echo "172.16.60.$ip yes" || echo "172.16.60.$ip no" >/dev/null 2>&1

ip=`expr "$ip" "+" "1"`

done

执行:

[root@ansible-server ~]# sh ip_ping.sh

172.16.60.1 yes

172.16.60.21 yes

172.16.60.22 yes

172.16.60.23 yes

172.16.60.24 yes

172.16.60.25 yes

172.16.60.31 yes

172.16.60.32 yes

172.16.60.33 yes

172.16.60.34 yes

172.16.60.35 yes

172.16.60.36 yes

172.16.60.37 yes

172.16.60.38 yes

172.16.60.39 yes

获取172.16.50.0/24, 172.16.51.0/24, 172.16.60.0/24 三个网段的可用ip

[root@ansible-server ~]# cat ip_ping.sh

#!/bin/bash

ip=1

while [ $ip != "254" ]; do

ping 172.16.50.$ip -c 2 | grep -q "ttl=" && echo "172.16.50.$ip yes" || echo "172.16.50.$ip no" >/dev/null 2>&1

ip=`expr "$ip" "+" "1"`

ping 172.16.51.$ip -c 2 | grep -q "ttl=" && echo "172.16.51.$ip yes" || echo "172.16.51.$ip no" >/dev/null 2>&1

ip=`expr "$ip" "+" "1"`

ping 172.16.60.$ip -c 2 | grep -q "ttl=" && echo "172.16.60.$ip yes" || echo "172.16.60.$ip no" >/dev/null 2>&1

ip=`expr "$ip" "+" "1"`

done

执行:

[root@ansible-server ~]# sh ip_ping.sh

172.16.50.1 yes

172.16.51.11 yes

172.16.50.16 yes

172.16.50.19 yes

172.16.51.20 yes

172.16.60.21 yes

172.16.50.22 yes

172.16.60.24 yes

172.16.50.25 yes

172.16.50.31 yes

172.16.60.33 yes

172.16.51.35 yes

172.16.60.36 yes

172.16.60.39 yes

172.16.51.41 yes

172.16.51.44 yes

172.16.50.52 yes

172.16.51.53 yes

172.16.50.55 yes

172.16.50.58 yes

172.16.51.65 yes

..................

linux批量umount脚本,Linux下批量ping某个网段ip的脚本相关推荐

  1. windows执行oracle脚本,Windows下通过计划任务执行数据库备份脚本

    Windows 下通过计划任务执行数据库备份脚本 在Linux下可以通过crontab来设置定时执行数据库的备份脚本,同样Windows 下可以通过设定任务计划程序来设定要执行的自动备份脚本.具体的设 ...

  2. linux批量杀进程_Linux下批量杀JAVA进程

    在工作中经常需要停止JAVA进程,停止时间也比较长,那么有时候因为一些情况,需要把 linux 下JAVA所有进程 kill 掉,又不能用killall 直接杀掉某一进程名称包含的所有运行中进程(我们 ...

  3. attrib批量显示文件夹_DOS下批量修改文件及文件夹属性(attrib命令详解)

    attrib指令用于修改文件的属性,文件的常见属性有:只读.存档.隐藏和系统 只读属性是指文件只可以做读的操作,不能对文件进行写的操作,就是文件的写保护. 存档属性是用来标记文件改动的,即在上一次备份 ...

  4. Linux下多网卡同网段多IP网络分流设定方法

    当服务器需要较高的网络流量时,在其它资源不造成瓶颈的情况下无疑会用到多网卡. 第1选项可考虑Linux的多网卡绑定,网上很多文章不推荐Linux服务器使用同网段的服务器,哥表示不解. 用过Window ...

  5. linux 网卡配置不一致,linux环境下,双网卡配置不同网段后,路由问题

    最近,新上线了10几台服务器,系统是centos 6.0 按照以前的惯例,配置服务器生产网络和维护网络.每台服务器的eth0 配置ip为生产网络,eth3配置为维护网络,生产网络和维护网络,物理上隔离 ...

  6. php 设置window计划任务,windows下设置计划任务自动执行PHP脚本

    背景: 环境部署在linux下或者windows中,可以使用windows的自动任务设置自动执行脚本执行一些日常运维任务 图形界面设置相对比较简单 准备工作: wamp(集成的PHP执行环境) 已经写 ...

  7. Linux下shell脚本实战之批量新建用户

    Linux下shell脚本实战之批量新建用户 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 1.使用提供的user.txt用户列表 2.批量新建us ...

  8. 用Python写脚本:通过ssh在Windows下批量管理Linux

    对于超过10台以上的linux服务器,就需要考虑如何进行批量管理了. 我了解的通常的方法有以下几种: 一:在linux系统下,编写except脚本,通过ssh远程执行命令.上传下载文件等. 二:使用S ...

  9. Linux:通过shell批量ping网站、ip延迟

    也许大家在使用Linux系统的时候也会遇到需要使用ping命令批量检查一批ip地址或网址的时候.博主我就在学习Linux系统的时候遇到这这样的问题--找谷歌速度比较快的IP地址.在查阅了一些资料后终于 ...

最新文章

  1. Android 模仿微信启动动画(转)
  2. 2021人工智能年度评选结果揭晓!AI落地最佳参考在此奉上
  3. Protocol Buffers java
  4. bert简介_关于BERT:你不知道的事
  5. 初学linux系统代码,linux初学者-系统日志(二)(示例代码)
  6. 关于应用的外部接口设计心得
  7. Java实现基础坦克大战【含源码】
  8. html鼠标经过改变样式,css如何实现鼠标经过样式改变
  9. 2015腾讯校园招聘软件测试部分笔试题
  10. IMDB电影排行爬取分析
  11. proxy代理服务器的代码实现
  12. python中怎么把每一个字符用、隔开_python 实现将list转成字符串,中间用空格隔开...
  13. 7-154 置点不动产——认真学习,努力工作买买房子吧
  14. 软件需求分析的工作步骤和流程
  15. MATLAB 基础笔记(二):常用矩阵的生成
  16. 固态硬盘读写速度快的原理是什么?
  17. 重新定义股票交易中的试错和复盘
  18. 什么是交换机 初级网络工程师 必看
  19. 无锡计算机科学与工程学院,瞩目!公办本科,无锡学院首次招生,这些优势很突出!...
  20. 百度人脸识别组件与mmkv冲突问题解决方案

热门文章

  1. python交互界面的退出
  2. selenium+python headless 爬虫环境配置
  3. 在ASP.NET MVC里对Web Page网页进行权限控制
  4. 【思维导图-索引篇】搞定数据库索引就是这么简单
  5. c#获取电脑硬件信息参数说明(主板篇 Win32_BaseBoard )
  6. MVC用非Entity Framework将数据显示于视图(二)
  7. GridView 72般绝技(转载)
  8. Scala的特质(Trait)介绍
  9. linux判断目录,文件存在等
  10. 鹅厂2020暑期实习第二次二面