BAT 网卡抓取以及设置IP

BAT 网卡抓取以及设置IP

1.简介:

此脚本可抓取本机的所有网卡信息,设置对应网卡的动态及静态IP地址

2.实现效果:在这里插入图片描述

3.相关代码:

@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit

::netsh interface ip set address "LAN" dhcp
::netsh interface ip set dns "LAN" dhcp

::netsh interface ip set address "LAN" static 192.168.1.175 255.255.255.0 192.168.1.1 
::netsh interface ip set dns "LAN" static 192.168.1.1
::netsh interface show interface 


@echo off & setlocal enabledelayedexpansion
echo. & echo 正在抓取网卡名称……
set m=0
for /f "tokens=1* delims=," %%a in ('Getmac /v /nh /fo csv') do (
set /a m+=1
set "name!m!=%%a"
set "name=%name:~1,-1%"
)
echo. & echo 1:!name1! & echo 2:!name2! & echo 3:!name3! & echo 4:!name4! & echo 5:!name5! & echo 6:!name6! & echo 7:!name7! & echo 8:!name8! & echo 9:!name9! & echo 10:!name10! 
set /p "Select_Card=选择需要设置的网卡序号:"
echo. 
if "%Select_Card%" == "1" ( set card=!name1! ) else (
if "%Select_Card%" == "2" ( set card=!name2! ) else (
if "%Select_Card%" == "3" ( set card=!name3! ) else (
if "%Select_Card%" == "4" ( set card=!name4! ) else (
if "%Select_Card%" == "5" ( set card=!name5! )
if "%Select_Card%" == "6" ( set card=!name6! )
if "%Select_Card%" == "7" ( set card=!name7! )
if "%Select_Card%" == "8" ( set card=!name8! )
if "%Select_Card%" == "9" ( set card=!name9! )
if "%Select_Card%" == "10" ( set card=!name10! ) else ( echo. & echo 未键入任何参数! & pause>nul & cls & goto :Select_Card )))))
rem echo. & echo 选择网卡:%card% 
rem 强制获取管理员权限
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
rem ::设置变量 
rem set NAME="以太网"
set NAME=%card%


echo 网络设置:
echo 1.设置静态IP
echo 2.设置动态IP
echo 3.退出
echo 4.获取网卡mac地址

set /p operate=
if %operate%==1 goto 1
if %operate%==2 goto 2
if %operate%==3 goto 3
if %operate%==4 goto 4


:1
echo 正在设置静态IP,请稍等...
rem ::可以根据你的需要更改 
set /p ADDR=请输入IP地址:   
set /p MASK=请输入子网掩码:   
set /p GATEWAY=请输入网关:   
netsh interface ipv4 set address %NAME% static %ADDR% %MASK% %GATEWAY% 
set /p DNS1=请输入主DNS:      
if "%DNS1%"=="" (echo DNS1为空) else netsh interface ipv4 set dns %NAME% static %DNS1% validate=no
set /p DNS2=请输入备用DNS:   
if "%DNS2%"=="" (echo DNS2为空) else (netsh interface ipv4 add dns %NAME% %DNS2% validate=no) 
echo **********已设置为静态IP***********
::%ADDR% 
::%MASK% 
::%GATEWAY% 
::%DNS1% 
::%DNS2%
pause
goto 3


:2
echo 正在设置动态IP,请稍等...
echo 正在从DHCP自动获取IP地址...
netsh interface ip set address %NAME% dhcp
echo 正在从DHCP自动获取DNS地址...
netsh interface ip set dns %NAME% dhcp 
echo **********已设置为动态IP地址***********

pause
goto 3


:3
exit

:4
for /f "skip=1 tokens=1 delims= " %%a in ('getmac') do set mac=%%~a
 
::如果输出的mac地址要以空格为分割符的内容,请把%mac%换成%mac:-= %
(echo %mac%)>C:\Users\clay\Desktop\test
pause
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

创客白泽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值