很多人都会遇到需要ping一个网段,看哪些ip地址有在使用的情况,网上下载的一些群ping软件要么杀毒软件报毒,要么显示结果每次不一样,于是我综合了网上各种批处理ping命令后,自己整理了一个批处理,希望能帮助到有需要的朋友,下面我先演示使用过程,最后给出批处理代码。
1、双击运行批处理文件,会弹出一个命令窗口,要求输入ip段,如果不输入,直接按回车的话,则默认为192.168.16段。
这里我输入我的路由分配的ip段,192.168.3并按回车
2、接着会要求输入ip地址起始位,如果不输入,直接按回车的话,则默认为1。
这里我输入10
3、最后会要求输入ip地址结束位,如果不输入,直接按回车的话,则默认为255。
这里我输入40
4、开始扫描,会显示起始和结束ip地址,以确认之前没有输入错误。
运行的时候不会有其他提示,如果不许要等待完成,可以直接关闭窗口以提前结束本次扫描。
5、扫描完成后,按任意键退出,窗口会自动关闭。
6、在批处理命令文件所在的文件夹,会生成对应的文本文件,里面就有本次扫描的结果(仅记录有通的结果)
7、以下为批处理的代码全文,将其保存在文本文件中,把文本文件的后缀txt替换成bat即可。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
@echo off color f0 rem 设置窗口背景色为白色,文字颜色为黑色 title 批处理扫网段(by taoge) rem 设置窗口标题 echo. echo 输入你要扫描的ip段,直接按回车则为192.168.16: set /p ipduan= rem 将用户输入赋值给ipduan变量 if "%ipduan%"=="" (set ipduan=192.168.16) rem 判断ipduan变量是否赋值,如果为空,则赋值为192.168.16 echo 输入你要扫描的ip起始位,直接按回车则为1: set /p qishi= rem 将用户输入赋值给qishi变量 if "%qishi%"=="" (set qishi=1) rem 判断qishi变量是否赋值,如果为空,则赋值为1 echo 输入你要扫描的ip结束位,直接按回车则为255: set /p jieshu= rem 将用户输入赋值给jieshu变量 if "%jieshu%"=="" (set jieshu=255) rem 判断jieshu变量是否赋值,如果为空,则赋值为255 echo 起始ip:%ipduan%.%qishi% rem 显示起始ip echo 结束ip:%ipduan%.%jieshu% rem 显示结束ip echo ======================================================= >>ping-%ipduan%.txt rem 记录分割线 echo 开始时间:%date%%time% >>ping-%ipduan%.txt rem 记录开始时间 echo 起始ip:%ipduan%.%qishi% >>ping-%ipduan%.txt rem 记录起始ip echo 结束ip:%ipduan%.%jieshu% >>ping-%ipduan%.txt rem 记录结束ip echo 正在扫描,请等待... echo 提前结束请直接关闭窗口 @for /l %%n in (%qishi%,1,%jieshu%) do @ping -w 600 -n 1 %ipduan%.%%n|find /i "ttl" >>ping-%ipduan%.txt rem 开始执行 echo 结束时间:%date% %time% >>ping-%ipduan%.txt rem 记录结束时间 echo ======================================================= >>ping-%ipduan%.txt rem 记录分割线 echo 扫描完毕,按任意键退出...&pause>nul |
8、最后声明一下,本批处理是本人大量查阅了各种批处理命令后综合出来的,欢迎大家交流斧正。
9、另外,这个批处理中没有对输入的值进行判断,所以如果你随便输入的话,则不能正常运行并记录结果,切记切记。
以上就是批处理扫描网段技巧,希望大家喜欢,请继续关注服务器之家。