参考了博客园Alfred Zhao的文章《Windows平台ping测试局域网所有在用IP

在cmd命令行运行如下命令即可:

for /L %i in (,,) do ping -n  -w  172.24..%i | find "回复" >>pingall.txt

这一条命令是ping局域网内地址范围在172.24.240.10~172.24.240.80的所有主机。ping的结果会输出到执行命令的目录里面的pingAll.txt文件。

注意:运行结果是追加到pingAll.txt文件的,不会新建立pingAll.txt文件。

运行样例如下:

本样例ping局域网内IP地址段:172.24.240.10~172.24.240.15的所有主机。运行过程和结果如下图所示。

运行结束后,会在D盘根目录生成pingAll.txt文件,文件内容如下:

从运行结果看,172.24.240.14和172.24.240.15两个ip的主机ping不通。

下面详细解释上面的这条命令:

用到了for、ping和find命令,并且把运行的结果输出到文本。

for命令的详细说明

(这里删除了本文不用的那一部分说明)

C:\Users\most>for /?
对一组文件中的每一个文件执行某个特定命令。 FOR %variable IN (set) DO command [command-parameters] %variable 指定一个单一字母可替换的参数。
(set) 指定一个或一组文件。可以使用通配符。
command 指定对每个文件执行的命令。
command-parameters
为特定命令指定参数或命令行开关。 在批处理程序中使用 FOR 命令时,指定变量请使用 %%variable
而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I. 如果启用命令扩展,则会支持下列 FOR 命令的其他格式: …… FOR /L %variable IN (start,step,end) DO command [command-parameters] 该集表示以增量形式从开始到结束的一个数字序列。因此,(1,1,5)将产生序列
1 2 3 4 5,(5,-1,1)将产生序列(5 4 3 2 1) ……

ping命令

本文开头那条命令用到了ping命令,并且含有参数-n 1,表示只发送一个数据包.

另外,ping命令还加了-w 60  参数表示超时时间60ms。

find命令

C:\Users\most>find /?
在文件中搜索字符串。 FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] "string" [[drive:][path]filename[ ...]] /V 显示所有未包含指定字符串的行。
/C 仅显示包含字符串的行数。
/N 显示行号。
/I 搜索字符串时忽略大小写。
/OFF[LINE] 不要跳过具有脱机属性集的文件。
"string" 指定要搜索的文本字符串。
[drive:][path]filename
指定要搜索的文件。 如果没有指定路径,FIND 将搜索在提示符处键入
的文本或者由另一命令产生的文本。 C:\Users\most>

本文开头那条命令里面的find指令搜索的范围是ping产生的文本。利用find搜索含有“回复”这两个字的字符串,并把搜索结果显示出来。

显示的搜索结果之所以被输出到文本文件,是因为用了">>"符号。具体介绍看《将cmd中命令输出保存为TXT文本文件

说的有点乱,其实就是想记一下笔记。

后来发现其实有现成工具可以做这个事情:

QuickPing 0.8.exe

在windows命令行批量ping局域网内IP的更多相关文章

  1. Windows命令行更改有线本地连接IP地址及DNS的bat脚本

    有些场景需要测试网络通不通等,每次打开网络和共享中心真烦,win10右下角还进不去了,shit! 运行ncpa.cpl也打开那个界面也是费劲吧啦,索性写个bat吧!为啥要写?还不是因为懒!可以把脚本复 ...

  2. 局域网内ping [局域网内ip地址]命令详解

    一.工作过程 主机A向主机B发送一个ICMP请求报文[类型字段为8,代码字段为0],若收到ICMP回复报 文[类型字段为0,代码字段为0]则说明主机B处于活动状态:若超时未收到回复,则可能是 因为(1 ...

  3. windows命令行 批量对源代码添加版权头/头信息

    简短精悍的代码,特别适合开源项目使用. for /r %%F in (*.as) DO ( move "%%F" tmp.txt type copyright.txt > & ...

  4. 探索Windows命令行系列(2):命令行工具入门

    1.理论基础 1.1.命令行的前世今生 1.2.命令执行规则 1.3.使用命令历史 2.使用入门 2.1.启动和关闭命令行 2.2.执行简单的命令 2.3.命令行执行程序使用技巧 3.总结 1.理论基 ...

  5. 探索Windows命令行系列(5):几个实用的命令例解

    1.关机命令(shutdown) 2.管理 Windows 服务(sc) 3.管理任务进程(tasklist.taskkill) 4.显示 TCP/IP 配置值(ipconfig) 5.网络诊断工具( ...

  6. 探索Windows命令行系列(6):活用批处理解决实际问题

    1.批量修改文件名 2.批量重启服务 3.全盘搜索指定文件 3.1.全盘搜索名称为 mm.jpg 的文件,获取其全路径 3.2.查找系统中所有名称以 .docx 结尾的文件 4.调用可执行程序 4.1 ...

  7. Linux命令行批量替换多文件中的字符串【转】

    Linux命令行批量替换多文件中的字符串[转自百度文库] 一种是Mahuinan法,一种是Sumly法,一种是30T法分别如下: 一.Mahuinan法: 用sed命令可以批量替换多个文件中的字符串. ...

  8. Windows命令行语法说明

    摘自:http://lavasoft.blog.51cto.com/62575/1113234   Windows命令行语法说明   说来惭愧,用windows这么多年了,对其命令行语法看得似懂非懂, ...

  9. 【Python】iichats —— 命令行下的局域网聊天程序

    转载请声明出处:http://www.cnblogs.com/kevince/p/3941728.html   ——By Kevince ii系列工具第三弹,命令行下的局域网聊天程序 原理: 程序启动 ...

随机推荐

  1. Shiro笔记(三)shiroFilter拦截器配置原则

    参考: http://blog.csdn.net/yaowanpengliferay/article/details/17281341

  2. php 图形用户界面GUI 开发

    php 图形用户界面GUI 开发 一.下载指定系统扩展 1 2 http://pecl.php.net/package/ui http://pecl.php.net/package/ui/2.0.0/ ...

  3. 6491: Daydream

    题目描述 You are given a string S consisting of lowercase English letters. Another string T is initially ...

  4. docker eureka 注册中心 服务提供者通信机制

    docker run -d --name gateway9527 -p 9527:9527  --add-host=eureka7001.com:192.168.1.15    -v /var/jen ...

  5. JMeter快速入门

    今天的年会已过,仍然是空手而归,不过俺坚信能让生活稳定永远都是努力.由于隔壁组负责年会的抢红包项目,因而趁此机会把通过工具模拟高并发的知识补了补,通过和身边大师的交流,总算是对压力测试有了个简要的了解 ...

  6. mysql 数据库(二)数据库的基本操作

    mysql 数据库(二)数据库的基本操作 用户管理,添加权限,创建,显示,使用数据库 1 显示数据库:show databases; 默认数据库: mysql - 用户权限相关数据 test - 用于 ...

  7. shell 日期加减,日期大小比较的方法

    1 日期加减方法可实现当天的日期加减,指定日期的加减,天周月年. 只判断yymmdd的秒 twoDayAgoTime=`date -d \`date -d "-2 day" +%Y ...

  8. SpringBoot使用Mybatis-Generator

    本文介绍如何将Maven和Mybatis-Generator配合使用. 简介 Mybatis-Generator是Mybatis提供的一个便捷型插件,自动可以为项目生产对应的实体类,Mapper,da ...

  9. GBT 31000-2015 社会治安综合治理基础数据规范 数据项 编码

    动态掌握 各级 综治组织 和 队伍建设 情况. 对 综治组织建设和其他业务 进行 统计. -- 数据描述 包括 序号  数据项名称 数据项类型 数据项长度 是否必填 相关条文和标准 -- 综治机构 包 ...

  10. Idea创建一个Springboot单模块项目

    1.打开IDEA,创建新项目,选择Spring Initializr,选择SDK为你的java版本. 2.点击下一步,输入Artifact 3.点击下一步,选择web 4.finish 5.完成后id ...