windows系统,使用bat脚本将DHCP获取到的ip固定成静态ip

公司原来是所有用户都是dhcp获取ip
现在要求所有用网线的设备都改成静态
我的需求是:
检测是否为dhcp获取,不是就不做任何操作
是dhcp过,脚本就把网卡上通过dhcp获取到的ip,掩码,网关,dns信息改成静态的


@echo off
cls

netsh interface ipv4 show addresses > t.txt

set LINE=1
set NAME=
set IP=
set MARK=255.255.255.0
set GETWAY=
set DNS1=114.114.114.114

setlocal enabledelayedexpansion

FOR /F "skip=%LINE% tokens=2,3* delims=, " %%i in (t.txt) do (
    echo "!LINE!": !NAME! - !IP! - !GETWAY!
    if "!LINE!" == "1" (
        set NAME=%%i
    ) 
    if "!LINE!" == "3" (
        set IP=%%j      
    )
    if "!LINE!" == "5" (
        set GETWAY=%%i    
        goto BREAK;
    )
    set /a LINE= !LINE! + 1
)

:BREAK
echo "!LINE!": !NAME! - !IP! - !GETWAY!

rem 设置iP
echo netsh interface ipv4 set address name=!NAME! source=static !IP! !MARK! !GETWAY!
netsh interface ipv4 set address name=!NAME! source=static !IP! !MARK! !GETWAY!

rem 设置DNS
echo netsh interface ipv4 set dns name=!NAME! source=static addr=!DNS1!
netsh interface ipv4 set dns name=!NAME! source=static addr=!DNS1!

echo netsh interface ip add dns name=!NAME! addr=!GETWAY! index=2
netsh interface ip add dns name=!NAME! addr=!GETWAY! index=2