|
wqonewq
初级用户
积分 20
发帖 8
注册 2008-4-14
状态 离线
|
『楼 主』:
请大家帮个忙写个批处理,第一个写出来送5个Q币
我是新手,请大家帮个忙写个批处理,第一个写出来的我给他QQ充5个Q币
我知道高手不在乎Q币,也是我一点小意思
批处理的意思如下,
先检测本机的MAC
然后检测C:\mac.txt有没有本机MAC(注mac.txt里面有100条MAC信息)
如果有网关改成192.168.0.250
如果没有网关改成192.168.0.1
|
|
2008-4-14 18:14 |
|
|
bat-zw
金牌会员
永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
『第
2 楼』:
试试这个:
不适合多网卡
@echo off
for /f "delims=:" %%i in ('ipconfig ^| findstr "Ethernet"') do set var=%%i
for /f "delims=: tokens=2" %%i in ('ipconfig /all ^| findstr "Physical"') do (
set str=%%i
call :lp %%str%%
)
pause&goto :eof
:lp
find "%str%" mac.txt>nul 2>nul
if %errorlevel% equ 1 (netsh interface ip set address "%var:~17%" gateway=192.168.0.1 gwmetric=1) else (netsh interface ip set address "%var:~17%" gateway=192.168.0.250 gwmetric=1)
goto :eof [ Last edited by zw19750516 on 2008-4-14 at 07:54 PM ]
|
批处理之家新域名:www.bathome.net |
|
2008-4-14 19:35 |
|
|
wqonewq
初级用户
积分 20
发帖 8
注册 2008-4-14
状态 离线
|
『第
3 楼』:
你QQ多少
你QQ多少 如果好用我给你充进去
|
|
2008-4-14 19:43 |
|
|
bat-zw
金牌会员
永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
|
2008-4-14 19:44 |
|
|
wqonewq
初级用户
积分 20
发帖 8
注册 2008-4-14
状态 离线
|
『第
5 楼』:
2楼的我试过了,行是行,
2楼的我试过了,行是行,但有必须在没有配置网关的前提下,如果网关存在的话,就不能配置了
|
|
2008-4-14 19:50 |
|
|
huahua0919
银牌会员
积分 1608
发帖 780
注册 2007-10-7
状态 离线
|
『第
6 楼』:
你没配置网关那设定网关地址有何用?
|
|
2008-4-14 19:53 |
|
|
bat-zw
金牌会员
永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
|
2008-4-14 19:54 |
|
|
tvzml
初级用户
积分 157
发帖 67
注册 2007-5-13
状态 离线
|
『第
8 楼』:
这是我重新编译过的,根据MAC修改IP,为我所用中。
注意:多网卡识别未加入,因为多网卡环境不多,所以没有加,我想只要努力,一定可以为我所用的。
@echo off
title AutoIP
ping -n 1 192.168.0.252>nul||goto check_go
if exist \\192.168.0.252\data\ArpBinding.ini COPY \\192.168.0.252\data\ArpBinding.ini %CD%\ArpBinding.ini /y & goto check_go
if exist wget.exe wget -q -N ftp://192.168.0.252/data/ArpBinding.ini
:check_go
cls
set zwym=255.255.255.0
set Gateway=192.168.0.1
set dns1=220.189.127.106
set dns2=192.168.0.1
set dns3=220.189.127.108
Set PC_IP=0.0.0.0
Set IP=0.0.0.0
set mac=00-00-00-00-00-00
echo %time:~0,8% 检测网络设备...
for /f "tokens=16" %%i in ('ipconfig /all^| find /i "Host Name"') do set pcName=%%i
for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip address"') do set PC_IP=%%i
for /f "tokens=12" %%i in ('ipconfig /all^| find /i "Physical Address"') do set mac=%%i
::读取网维大师ArpBinding.ini
for /f "tokens=1 delims==" %%i in ('type ArpBinding.ini^|find /i "%mac%"') do set IP=%%i
::读取普通的ARP绑定批处理文件
::for /f "tokens=3" %%i in ('find /i "%mac%" "mac.bat"') do set IP=%%i
if %IP%==0 goto ipend
set Ipx=%IP:~10,3%
if %Ipx% lss 2 goto Ipx_end
if %Ipx% geq 254 goto Ipx_end
if %Ipx% lss 10 set a=00& goto Ipx_config
if %Ipx% lss 100 set a=00& set /a a=%a%-0& goto Ipx_config
if %Ipx% lss 255 set a=& goto Ipx_config
:Ipx_config
set Ipx_reg=%a%%Ipx%
set LISTPCNAME=A%Ipx_reg%
set mac1=%mac:~0,2%
set mac2=%mac:~3,2%
set mac3=%mac:~6,2%
set mac4=%mac:~9,2%
set mac5=%mac:~12,2%
set mac6=%mac:~15,2%
set wmicMac=%mac1%:%mac2%:%mac3%:%mac4%:%mac5%:%mac6%
::echo %time:~0,8% 本机 name:%pcName% ^| Mac:%Mac% ^| IP:%PC_IP%
::echo %time:~0,8% 列表 name:%LISTPCNAME% ^| Mac:%Mac% ^| IP:%ip%
if %pcName%==%LISTPCNAME% goto CHECKIP
WMIC computersystem where Name="%pcName%" call Rename Name="%LISTPCNAME%" >nul
reg add HKLM\system\currentcontrolset\control\computername\computername\ /v computername /t reg_sz /d "%LISTPCNAME%" /f >nul
reg add HKLM\system\currentcontrolset\services\tcpip\Parameters\ /v "NV Hostname" /t reg_sz /d "%LISTPCNAME%" /f >nul
echo Windows Registry Editor Version 5.00 >%Ipx_reg%.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] >>%Ipx_reg%.reg
echo "VirtualNetworkNumber"=dword:00000%Ipx_reg% >>%Ipx_reg%.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NwlnkIpx\Parameters] >>%Ipx_reg%.reg
echo "VirtualNetworkNumber"=dword:00000%Ipx_reg% >>%Ipx_reg%.reg
regedit /s %Ipx_reg%.reg
del %Ipx_reg%.reg
:CHECKIP
if %PC_IP%==%IP% goto IP1~IP2
echo %time:~0,8% 正在设置本机IP...请稍候
WMIC NICCONFIG WHERE MACAddress="%wmicMac%" call EnableStatic("%ip%"),("%zwym%") >nul
WMIC NICCONFIG WHERE MACAddress="%wmicMac%" call SetGateways("%Gateway%") >nul
WMIC NICCONFIG WHERE MACAddress="%wmicMac%" call SetDNSServerSearchOrder("%dns1%", "%dns2%", "%dns3%") >nul
echo %time:~0,8% 本机IP设置成功!
for /f "tokens=2 delims=&" %%i in ('devcon find pci\* ^| findstr "Ethernet"') do devcon DISABLE *%%i*> nul
for /f "tokens=2 delims=&" %%i in ('devcon find pci\* ^| findstr "Network"') do devcon DISABLE *%%i*> nul
for /f "tokens=2 delims=&" %%i in ('devcon find pci\* ^| findstr "Ethernet"') do devcon ENABLE *%%i*> nul
for /f "tokens=2 delims=&" %%i in ('devcon find pci\* ^| findstr "Network"') do devcon ENABLE *%%i*> nul
echo %time:~0,8% 正在重启网卡...请稍候
ping -n 5 127.1>nul
for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip address"') do set PC_IP=%%i
echo %time:~0,8% IP:%PC_IP%
set m=31
call :echo
:IP1~IP2
echo %time:~0,8% 检测到需设置的IP信息与当前使用的相同,程序退出!
goto ipend
:echo
set /a m-=1
echo %time:~0,8% 剩余 %m% 秒后重启系统!
ping -n 2 127.1>nul
if %m% lss 1 shutdown -r -t 0 && goto ipend
goto echo
:ipend
[ Last edited by tvzml on 2008-4-14 at 09:21 PM ]
|
|
2008-4-14 21:17 |
|