标题: [网络工具] 批处理自动扫描IP、MAC地址并进行绑定 [打印本页]
作者: 希望的寄托 时间: 2008-3-10 16:34 标题: 批处理自动扫描IP、MAC地址并进行绑定
- set /p dz=
- echo %dz%>dz.txt
- del 1.txt /q
- for /f "tokens=1-4 delims=." %%a in (dz.txt) do set dza=%%a
- for /f "tokens=1-4 delims=." %%a in (dz.txt) do set dzb=%%b
- for /f "tokens=1-4 delims=." %%a in (dz.txt) do set dzc=%%c
- for /f "tokens=1-4 delims=." %%a in (dz.txt) do set dzd=%%d
- if "%dzd%"=="" goto ttt arp -a %dza%.%dzb%.%dzc%.%dzd%>1.txt
- del dz.txt /q
- del 2.txt /q
- :ttt
- if "%dzd%"=="%dzd%" goto nnn
- for /l %%i in (1,1,254) do arp -a %dza%.%dzb%.%dzc%.%%i>>1.txt
- :nnn
- for /f "tokens=1* delims= " %%i in ('findstr /c:"dynamic" 1.txt') do echo %%i %%j>>2.txt
- for /f "tokens=1* delims= " %%i in ('findstr /c:"static" 1.txt') do echo %%i %%j>>2.txt
- for /f "tokens=1-3 delims= " %%a in (2.txt) do arp -s %%a %%b
复制代码
作者: 希望的寄托 时间: 2008-3-10 16:37
输入IP的前三位就扫描整个网段,输入全部IP就扫描所输入的IP
扫描之后都会自动绑定
如10.0.0 就扫描整个网段
10.0.0.1就扫描ip为10.0.0.1的电脑
作者: youxi01 时间: 2008-3-10 17:34
先鼓励一下:看到了希望的寄托作品,不错不错!
不过也提几点建议:
1、
for /f "tokens=1-4 delims=." %%a in (dz.txt) do set dza=%%a
for /f "tokens=1-4 delims=." %%a in (dz.txt) do set dzb=%%b
for /f "tokens=1-4 delims=." %%a in (dz.txt) do set dzc=%%c
for /f "tokens=1-4 delims=." %%a in (dz.txt) do set dzd=%%d
没必要用这么多的for,可以直接在一个for 里这样:- for /f "tokens=1-4 delims=." %%a in (dz.txt) do (
- set dza=%%a
- set dzb=%%b
- set dzc=%%c
- set dzd=%%d)
复制代码
2、后面的代码还可以精简、效率可以提高
作者: 随风 时间: 2008-3-10 17:42
呵呵,给你缩了缩水,不用临时文件。
未测试。。
:- @echo off
- set /p dz=
- for /f "tokens=1-4 delims=." %%a in ("%dz%") do (
- if not "%%d"=="" (call :nnn "%dz%"&exit)
- )
- for /l %%i in (1,1,254) do call :nnn "%dz%.%%i"
- exit
- :nnn
- for /f "tokens=1* delims= " %%e in ('arp -a %~1^|findstr "dynamic static"') do (
- for /f "tokens=1-3 delims= " %%j in ("%%e %%f") do arp -s %%j %%k
- )
- goto :eof
复制代码
作者: coffechicken 时间: 2008-4-29 17:26
很好,我正好要这东西来着``~~~学习`ing ```
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |