中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-05 16:00
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 254线程(汗!!!) ping 任意网段的批处理(己测试)
可打印版本  1,356 / 6
第1楼 zw750516 发表于 2007-08-04 20:22
新手上路 发帖 7 积分 16
254线程(汗!!!) ping 任意网段的批处理(己测试)
//以192.168.1.网段为例
ipconfig /all >ipconfig.txt
find "Default Gateway" ipconfig.txt >IP.txt
for /f "skip=2 tokens=13" %%a in (ip.txt) do echo %%a >ip.txt //显示为192.168.1.1 (网关)
setlocal enabledelayedexpansion
for /f "tokens=*" %%d in (ip.TXT) do (
set str=%%d
echo !str:~0,-4! >ip.TXT) //显示为192.168.1. 后有空格
for /f "delims=" %%c in (ip.txt) do set a=%%c
if " " == "%a:~-1,1%" (set "a=%a:~0,-1%" ) //通过处理消除空格
set i=%a%
for /l %%p in (1,1,254) do @echo ping %i%%%p -n 1 >%%p.bat //输入网段变量
for /l %%p in (1,1,254) do @echo exit >>%%p.bat //加入结束命令
for /l %%p in (1,1,254) do start %%p.bat //254线程拼命令
ping 1.1.1.1 -n 2 //作用在延时(只想了个简单的)
arp -a >arp.txt //显示网段在线 ip 和 mac .现在的xp不先拼通arp -a 是没用的,大家可以试下,只会显示网关信息.
del ipconfig.txt ip.txt
for /l %%p in (1,1,254) do del %%p.bat //删除临时文件


[ Last edited by zw750516 on 2007-8-4 at 09:08 PM ]
第2楼 zw750516 发表于 2007-08-05 15:16
新手上路 发帖 7 积分 16
虽然不是很成熟的作品,但实用啊,怎么就没人讨论讨论指点指点啊,晕哦!!!
第3楼 zw750516 发表于 2007-08-06 11:05
新手上路 发帖 7 积分 16
语句太繁索了,有没高手帮改下啊!!!
第4楼 429499381 发表于 2007-08-11 04:00
中级用户 发帖 202 积分 452
你的P处理的确许要很多简化的地方!! 我怀疑你的批处理根本得不到你想要的结果!!! 最多是得到自己的网关!!

看看我的


@ipconfig /all | find "Default Gateway" >c:\1.txt

@for /f "tokens=1,2 delims=:" %%a in (c:\1.txt) do set ip=%%b

@echo %ip%

@set i=%ip:~1,9%

:loop

@set /a a+=1

@start /i /min ping -n 2 -w 500 %i%%a% >nul

@if "%a%"=="20" exit

@goto :loop

[ Last edited by 429499381 on 2007-8-11 at 04:35 AM ]
第5楼 zouzhxi 发表于 2007-08-17 11:02
中级用户 发帖 177 积分 430 来自 广东深圳
RE 429499381:

你的也只有当关网段的网关呀...

呵呵...
第6楼 qzwqzw 发表于 2007-08-17 11:59
银牌会员 发帖 636 积分 2,343
这些都不是很成熟的作品
可以借鉴一下以前的讨论
第7楼 zw750516 发表于 2007-08-29 17:09
新手上路 发帖 7 积分 16
Originally posted by 429499381 at 2007-8-11 04:00 AM:
你的P处理的确许要很多简化的地方!! 我怀疑你的批处理根本得不到你想要的结果!!! 最多是得到自己的网关!!

看看我的


@ipconfig /all | f ...

我的批处理语句是繁琐,但出来的结果肯定是操作机所在网段的所有在线IP信息!大家可以测试下再来评论。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023