中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 大家能帮我完善一下扫描局域网mac地址并转换成modiip
作者:
标题: 大家能帮我完善一下扫描局域网mac地址并转换成modiip 上一主题 | 下一主题
dato
高级用户




积分 916
发帖 377
注册 2004-3-8
状态 离线
『楼 主』:  大家能帮我完善一下扫描局域网mac地址并转换成modiip

偶想试图使用
http://www.unixwiz.net/tools/nbtscan.html#download
提供的nbtscan和gnu sort来将局域网扫描的mac地址处理成modiip的格式。

获得的abc.txt

192.168.10.8    WORKGROUP\ONLY208               00:1f:3c:2d:5f:f6 SHARING
192.168.10.222  WORKGROUP\ONLY202               00:1f:3c:28:43:2c SHARING

但是最后处理时只能生成一条记录,因为受set替换的影响,不知道该如何处理,请大家帮我修改一下谢谢
mac.ini
001f3c28432c=192.168.10.222,ONLY202
.\arc\nbtscan-1.0.35.exe -m 192.168.10.0/24 | .\arc\sort -n -t . -k 1,1 -k 2,2 -k 3,3 -k 4,4 >>abc.txt
setlocal enabledelayedexpansion
for /f "tokens=1-3 delims= " %%a in (abc.txt) do (
set mac=%%c
set ip=%%a
set cname=%%b
)
Call :modiip %mac::= %
goto eof
:modiip
set cname=%cname:~10,9%
echo %1%2%3%4%5%6=%ip%,%cname%>>mac.ini
pause




http://dato.ys168.com
google search bot
http://dato.minidns.net/
2008-8-24 12:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 2 楼』:  


@echo off
type nul>"mac.ini"
.\arc\nbtscan-1.0.35.exe -m 192.168.10.0/24 | .\arc\sort -n -t . -k 1,1 -k 2,2 -k 3,3 -k 4,4 >>abc.txt
setlocal enabledelayedexpansion
for /f "tokens=1-3 delims= " %%a in (abc.txt) do (
  set mac=%%c
  set mac=!mac::=!
  set cname=%%b
  >>"mac.ini" echo !mac!=%%a,!cname:~10!
)
pause




2008-8-24 12:52
查看资料  发短消息 网志   编辑帖子  回复  引用回复
dato
高级用户




积分 916
发帖 377
注册 2004-3-8
状态 离线
『第 3 楼』:  

3Q



http://dato.ys168.com
google search bot
http://dato.minidns.net/
2008-8-24 13:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
weasel
初级用户




积分 118
发帖 66
注册 2006-8-18
状态 离线
『第 4 楼』:  

再发个

  Quote:
@echo off
[quote]
:地址扫描
echo 内网IP段网卡地址扫描
echo.
echo 不扫描请输入 [N],扫描请输入扫描的ip段前三段(例如:192.168.1):
set /p ipa=
IF /I '%ipa%'=='Y' goto ipend
echo.
echo 正在处理数据请稍候........
echo.
for /l %%i in (1 1 254) do start/b ping -n 1 -w 1 %ipa%.%%i>nul && echo 连接: %ipa%.%%i
arp -a|findstr /v "00-00-00-00-00-00"|more
arp -d
goto 地址扫描



2009-2-19 01:20
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: