如何通过脚本添加多个WINS IP地址?netsh命令尝试遇阻
批量添加WINS服务器地址解决方案
批处理脚本修复
你之前的批处理脚本仅能添加最后一个地址,是因为netsh int ip set winsservers ... static命令会覆盖当前所有已配置的WINS服务器条目,而非追加。正确的做法是先设置第一个WINS地址(替换原有配置),之后用add参数追加剩余地址:
:: 替换原有WINS配置,设置第一个地址 netsh int ip set winsservers "Wi-Fi" static 10.0.0.1 :: 追加第二个WINS地址 netsh int ip add winsservers "Wi-Fi" 10.0.0.2 :: 追加第三个WINS地址 netsh int ip add winsservers "Wi-Fi" 10.0.0.3
注:index参数并非set winsservers的有效语法,所以之前带index的脚本会报错,使用add命令时无需手动指定索引,系统会自动按添加顺序排序。
PowerShell脚本方案
如果需要用PowerShell实现,可以直接通过Set-WinsServerAddress命令一次性设置多个WINS地址:
# 获取目标网卡(名称为Wi-Fi) $targetAdapter = Get-NetAdapter -Name "Wi-Fi" # 批量设置WINS服务器地址 Set-WinsServerAddress -InterfaceIndex $targetAdapter.InterfaceIndex -ServerAddresses "10.0.0.1", "10.0.0.2", "10.0.0.3"
如果需要保留原有WINS地址并追加新地址,可以先读取现有配置再合并:
$targetAdapter = Get-NetAdapter -Name "Wi-Fi" # 获取现有WINS地址 $existingWins = (Get-WinsServerAddress -InterfaceIndex $targetAdapter.InterfaceIndex).ServerAddresses # 合并现有地址与新地址,去重 $allWins = $existingWins + "10.0.0.1", "10.0.0.2", "10.0.0.3" | Select-Object -Unique # 应用合并后的配置 Set-WinsServerAddress -InterfaceIndex $targetAdapter.InterfaceIndex -ServerAddresses $allWins
内容的提问来源于stack exchange,提问作者user2957584
相关产品推荐
相关产品推荐

