帮我解释下这个批处理命令

来源:百度知道 编辑:UC知道 时间:2024/06/21 02:28:57
@echo off
::::
arp -d
::::
if exist ipconfig.txt del ipconfig.txt
ipconfig /all >ipconfig.txt
if exist phyaddr.txt del phyaddr.txt
find "Physical Address" ipconfig.txt >phyaddr.txt
for /f "skip=2 tokens=12" %%M in (phyaddr.txt) do set Mac=%%M
::::
if exist IPAddr.txt del IPaddr.txt
find "IP Address" ipconfig.txt >IPAddr.txt
for /f "skip=2 tokens=15" %%I in (IPAddr.txt) do set IP=%%I
::::
arp -s %IP% %Mac%
del /q ipaddr.txt
del /q ipconfig.txt
del /q phyaddr.txt
::::
arp -s 192.168.0.1 00-1b-21-08-a3-94
::::
ping 127.0.0.1 -n 4

最好每一句的意思都解释下 谢谢个位了
那它主要的作用是什么呢?

@echo off 这句要解释吗?
:::: 这句没有意义
arp -d 清除host文件
::::
if exist ipconfig.txt del ipconfig.txt 如果存在ipconfig.txt就删掉它
ipconfig /all >ipconfig.txt 把目前的ip配置写入ipconfig.txt
if exist phyaddr.txt del phyaddr.txt 同上再同上
find "Physical Address" ipconfig.txt >phyaddr.txt 在ipconfig.txt中找Physical Address(网卡地址,也就是Mac)关键字,并将它所在的一行写入phyaddr.txt
for /f "skip=2 tokens=12" %%M in (phyaddr.txt) do set Mac=%%M 在phyaddr.txt中提取关键字,提取的方法你要看for语句的具体用法...总不能让我在这里解释吧>??批处理之家,非常批处理都有for的详细说明.
::::
if exist IPAddr.txt del IPaddr.txt 如果存在IPAddr.txt就删掉
find "IP Address" ipconfig.txt >IPAddr.txt 在ipconfig.txt找ip address关键字并写入ipaddr.txt
for /f "skip=2 tokens=15" %%I in (IPAddr.txt) do set IP=%%I
::::
arp -s %IP% %Mac% 把用for提取出来的IP和Mac地址写入host
del /q ipaddr.txt