批处理ping的高级用法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、网络连接监视日志
问题:交换机连接不稳定的情况,每天会随机中断几分钟,为了捕捉这个问题,做一个带时间显示的批处理文件pingtime.bat:
解决:@rem pingtime.bat Createdby Zheng Xiaohui
@echo off
echo "Begin ----------------------------"
rem time
time /t
pin %1 %2 %3 %4 %5 | find "Reply"
rem sleep 10
其中显示时间命令有两个版本,在windows2000上用time/t 命令即可,在win98上,要在当前目录下创建只有一个空回车的cr.txt文件。
然后再做一个批处理文件来循环调用pingtime.bat并写入日志:
@rem pinglog.bat Createdby Zheng Xiaohui
@echo off
:begin
call pingtime 192.168.1.1>>pingtime.log
goto begin
2、搜索当前网段内的所有活动ip
FOR /L %I in (1,1,255) DO PING 172.1.1.%I -n 1 -w 100 |find “Reply”>>c:\ip.txt
3、搜索当前网段内所有的ip地址/mac对照表
方法:首先我们做一个批处理,ping 1个ip地址,如果有reply,就调用arp -a命令,查看当前arp缓存里的ip-mac列表,并且再用dos筛选命令find找出当前目标ip地址。
解决:@rem arplist.bat Createdby Zheng Xiaohui
@echo off
call pin %1 | find "Reply">nul
if %ERRORLEVEL%==0 goto arplist
goto end
:arplist
arp -a |find "%1"
:end
然后用类似上一节的方法做一个子网ip地址循环脚本来调用arplist.bat。
@rem arpall.bat Createdby Zheng Xiaohui
@for /L %%A in (1,1,254) do arplist 192.168.1.%%A >> arpall.log
注意:这个脚本不太完善,比如用192.168.1.1过滤arp表时,192.168.1.1**都会输出,而且不能处理本机ip,所以做好后要手工修改一下
pin.bat
pin.bat代替缺省的ping设置:
@rem pin.bat Createdby Zheng Xiaohui
@ping -n 1 -l 16 -w 100 %1 %2 %3 %4 %5
这命令比缺省的ping快很多,后面加%1等是为了接受命令行参数,这是为了下面的扩展用法准备的。