=======================by me=====================================

@echo off
echo.
color FC
for /f %%i in (pingip.txt) do (
ping -w 1200 -n 1 %%i|find /i "正在"
ping -w 1200 -n 2 %%i|find /i "TTL"
echo.
)
echo.&echo 感谢小明扫描完毕,随便退出...&pause>nul

============================================================

一键批量ping任意ip段的存活主机

1、如果IP连续,例如(192.168.1.1-192.168.1.10):
@echo off&setlocal ENABLEDELAYEDEXPANSION
if exist onlist.txt
if exist offlist.txt
for /l %%i in (1,1,10) do (
ping -n 1 192.168.1.%%i>nul 2>nul
if !errorlevel!==0 (echo 192.168.1.%%i >>c:\bat\onlist.txt) else (echo 192.168.1.%%i >>c:\bat\offlist.txt)
) 2、如果IP不连续,那使用一个文件plist写入要测试的地址列表,然后批处理:
@echo off&setlocal ENABLEDELAYEDEXPANSION
if exist c:\bat\onlist.txt del c:\bat\onlist.txt
if exist c:\bat\offlist.txt del c:\bat\offlist.txt
for /f %%i in (c:\bat\pclist.txt) do (
ping -n 1 %%i>nul 2>nul
if !errorlevel!==0 (echo %%i >>c:\bat\onlist.txt) else (echo %%i >>c:\bat\offlist.txt)
)

  今晚继续我们的电脑批处理系列教程。如果想知道自己的小区宽带或局域网,甚至外网任意某一ip段,目前有多少人同时在上网肿么办呢?可能大家想到的一定是找工具什么的。其实不然,利用Windows内置的批处理功能完全可以实现批量ping查找指定网段存活主机的目的!

@echo off
color e
title
批处理扫网段主机
echo.
@for /f "tokens=1-4 delims=."
%%i in (ip.txt) do (@for /l %%n in (1,1,255) do @ping -w 600 -n 1
%%i.%%j.%%k.%%n|find /i "ttl")
echo.&echo
扫描完毕,按任意键退出...&pause>nul

  复制以上代码粘贴到记事本文档里,然后另存为 批量ping.bat
,再新建一个空白的文本文档,重命名为 ip.txt
。一切准备完事儿,就可以将你要批量扫描的ip段的地址放入ip.txt里(比如要扫自己对应的内网IP段就可以在ip.txt里输入
192.168.1.1 后保存),然后双击一键运行 批量ping.bat 批处理脚本就可以看到返回的结果了。格式类似于:

Reply from 192.168.1.1: bytes=32
time=2ms TTL=64
Reply from 192.168.1.2: bytes=32 time=3ms TTL=64
Reply
from 192.168.1.3: bytes=32 time=2ms TTL=64
Reply from 192.168.1.5: bytes=32
time=2ms TTL=64
Reply from 192.168.1.6: bytes=32 time=1ms
TTL=64
……此处省略余下的所有可能的结果……

  下面我就来解读一下介个看起来有点儿吃力的批处理命令吧。我们分拆来看一下,ping -w
600 -n 1 表示对指定ip地址ping一次,等待超时的时间为600毫秒;|find /i "ttl"
指的是仅显示ping返回结果中带“ttl”字符串的结果,也就是将指定网段内不存活的主机过滤掉了。而前面的 @for /f "tokens=1-4 delims=." %%i in (ip.txt)
意思是将“ip.txt”里的字符串(也就是我们要查找的ip段的地址)以“.”为界分割为四部分,分别赋予后面的变量 %%i、%%j、%%k 。最后剩下的
@for /l %%n in (1,1,255)
则表示从1开始循环+1递增一直到255停止,然后赋予变量 %%n 。看不懂滴可以在cmd窗口里输入 for /?
查看一下命令详解吧。

一键批量ping任意ip段的存活主机的更多相关文章

  1. shell脚本批量ping测试IP是否通

    #!/bin/bash rm -f result.txt cat ip.txt | fping > result.txt 2行代码就搞定,很方便,初学shell,很强大,问了下同事,但是shel ...

  2. python实现本地批量ping多个IP

    本文主要利用python的相关模块进行批量ping ,测试IP连通性. 下面看具体代码(python3): #!/usr/bin/env python#-*-coding:utf-8-*- impor ...

  3. 批量Ping IP

    刚刚接触Python 想做点什么 听说Python 在网络方便很厉害 后来总结如下: 第一:发现公司都固定IP 每次新来同事都要猜一个没有人用的IP  很费劲 第二:我们公司有的IP可以上QQ 有的不 ...

  4. linux,windows下检测指定的IP地址是否可用或者检测IP地址冲突的3种方式(批处理程序,python程序,linux shell 批量ping)

    本文中的脚本适用范围: 1)检测某些IP地址是否被占用: 2)检测网络中某些设备是否存活: 3)在分配新的ip地址之前,批量检测环境中是否存在冲突的机器 以上检测基于ICMP Ping报文,要求所有的 ...

  5. shell 编写脚本批量Ping IP

    服务器总是一下子买了很多的段的ip.通过绑定后,也不知道这些ip是否绑定成功,所以就写了一个shell脚本,把ip输好,批量ping一下,看是不是都能ping通. 脚本如下: 此外.还有一个ip文件, ...

  6. python实现批量ping IP,并将结果写入

    最近工作需要,写了一个Python小脚本,分享给大家,因为公司的IP用的差不多了,然后离职人员的IP有没有及时删除,导致没多少IP用了,所以做了一个python脚本跑了跑,清出来一堆ping不通的IP ...

  7. 批量屏蔽符合条件的IP地址,支持添加白名单,IP段,增量,大于指定次数的IP

    批量屏蔽符合条件的IP地址,支持添加白名单,IP段,增量 大概的思路是利用sh,从日志中提取出来对应的IP地址,然后再交由python进行对比,判断,最终将需要添加至iptables列表中的IP写入到 ...

  8. shell脚本和python脚本实现批量ping IP测试

    先建一个存放ip列表的txt文件: [root@yysslopenvpn01 ~]# cat hostip.txt 192.168.130.1 192.168.130.2 192.168.130.3 ...

  9. Shell学习笔记之shell脚本和python脚本实现批量ping IP测试

    0x00 将IP列表放到txt文件内 先建一个存放ip列表的txt文件: [root@yysslopenvpn01 ~]# cat hostip.txt 192.168.130.1 192.168.1 ...

随机推荐

  1. PostgreSQL学习手册(常用数据类型)

    一.数值类型:     下面是PostgreSQL所支持的数值类型的列表和简单说明: 名字 存储空间 描述 范围 smallint 2 字节 小范围整数 -32768 到 +32767 integer ...

  2. iOS Quartz2D画图

    对于刚接触Quartz2D的同学来说,先了解 上下文 的概念,再从最基础的画线来具体体验Quartz2D的画图步骤 介绍Quart2D :是苹果官方的二维(平面)绘图引擎,同时支持iOS和macOS系 ...

  3. Word 文字转表格

    今天工作的时候遇到一个问题,需要整理出一个工程下依赖的jar的名称和大小,并且按照大小排序,我在使用一个java程序打印出名称和大小之后,需要将这些文字整理到word文档表格中,刚开始是想一个个的拷进 ...

  4. asp.net如何把一个tostring类型转化为dateTime类型

    Convert.ToDateTime(dr["consult_DealTime"].ToString()).ToString("yyyy-MM-dd"); co ...

  5. java系统参数

    package com.test; import java.sql.SQLException; import java.util.Properties; import com.mchange.v2.c ...

  6. linux下如何查询jdk安装路径

    1:echo $JAVA_HOME 使用$JAVA_HOME的话能定位JDK的安装路径的前提是配置了环境变量$JAVA_HOME,否则如下所示,根本定位不到JDK的安装路径 [root@localho ...

  7. hadoop(二)

    三 Hive和Hbase #安装配置Hbase环境#主要参考https://my.oschina.net/zc741520/blog/388718网站配置的是集群,这里是伪分布,将网站中涉及多个主机的 ...

  8. hadoop(一)

    1 环境熟悉安装jdk.hadoop配置xml文件,启动伪分布式运行example-jar,测试mapreduce程序2 mapreduce编程使用eclipse开发mapreduce程序,导出jar ...

  9. hdu1116回溯N皇后问题

    题目连接 经过思考,不难发现:恰好N个皇后放在不同行不同列,那么是不是可以转换成N个皇后所在行分别确定(一人一行)的情况下对她们的所在列的枚举. 也就是列的全排列生成问题,我们用c[x]表示x行皇后的 ...

  10. Ubuntu下安装python相关数据处理

    01. Ubuntu下安装ipython sudo apt-get install ipython 02. Ubuntu下安装pip $ sudo apt-get install python-pip ...