要在Windows上使用批处理脚本设置自定义IP地址和DNS服务器,可以编写以下脚本:
@echo off
REM 我们使用"chcp"命令将代码页设置为UTF-8,并使用"> nul"将输出重定向到空设备,以避免显示额外的输出(这是重点)
chcp 65001 > nul
REM 定义网络参数
set ipaddr=192.168.3.37
set mask=255.255.255.0
set gateway=192.168.3.1
set dns1=8.8.8.8
set dns2=8.8.4.4
REM 定义网络连接名称
set connection="以太网"
echo -----------------------------
echo - 正在设置网络参数 -
echo -----------------------------
echo IP地址:%ipaddr%
echo 子网掩码:%mask%
echo 默认网关:%gateway%
echo 首选DNS:%dns1%
echo 备用DNS:%dns2%
echo 网络名:%connection%
echo -----------------------------
REM 设置IP地址、子网掩码和默认网关
netsh interface ipv4 set address %connection% static %ipaddr% %mask% %gateway%
REM 设置首选DNS服务器
netsh interface ipv4 add dnsservers name=%connection% address=%dns1% index=1 validate=no
REM 设置备用DNS服务器
netsh interface ipv4 add dnsservers name=%connection% address=%dns2% index=2 validate=no
REM 输出设置完成的消息
echo -----------------------------
echo - 网络参数设置完成 -
echo -----------------------------
echo IP地址:%ipaddr%
echo 子网掩码:%mask%
echo 默认网关:%gateway%
echo 首选DNS:%dns1%
echo 备选DNS:%dns2%
echo -----------------------------
pause
在上述示例中,我们首先定义了要使用的接口名称、IP地址、子网掩码、网关地址和两个DNS服务器地址。然后,使用"netsh"命令分别设置接口的IP地址和添加DNS服务器。
需要注意的是,这个脚本中使用了双引号将接口名称括起来,以确保它被视为整体字符串。此外,在添加DNS服务器时,我们使用了"index"参数来指定DNS服务器的优先级。在本例中,我们将第一个DNS服务器(%dns1%)设置为首选服务器,第二个DNS服务器(%dns2%)设置为备用服务器。
在运行脚本之前,请确保您以管理员身份运行命令提示符或批处理脚本,以获得必要的权限。另外,还需要注意,此脚本将更改计算机网络配置,因此请在使用之前备份您的原始配置,并谨慎操作。
重点备注: chcp 65001 > nul
字符集一定要设置,我前面没有设置,报各种校验异常,什么文件名、目录名或卷标语法不正确…