如何通过批处理文件运行netsh命令

时间:2015-08-22 04:36:36

标签: batch-file command-line command netsh

我想通过批处理文件运行以下命令。

netsh
wlan
connect name=NETWORK-NAME

问题是'netsh'和'wlan'无法使用传统的分隔符(&,&&)在同一行中完成。如果我将此字符串作为批处理文件运行:

echo 1 & netsh & echo 2 & wlan & echo 3 & connect name=NETWORK-NAME

它输出1,激活netsh并在那里停止而不执行批处理文件的其余部分。

2 个答案:

答案 0 :(得分:2)

netsh是一个程序,当你输入程序时可以以交互模式运行,你输入命令修饰符并逐行切换上下文,或者只是立即在所需的竞争中运行所需的操作。 所以你只需要制作一个字符串:

@echo off
netsh wlan connect name=profile_name ssid=SSID_name interface="Wirelss network adapter"

请注意,ssid和interface是可选的。如果系统中有多个wirelss网络适配器,则需要指定接口 - 它对应于适配器名称。如果您保存的无线网络配置文件中有多个SSID,则需要指定ssid。

答案 1 :(得分:1)

我知道这是一篇较旧的文章,但是互联网上的信息永远都是..如此。

那实际上是行不通的。 NETSH本身就是 shell ,就像DOS一样(现在)。您可以直接在命令行上执行该操作,但不能在批处理文件中执行。在批处理模式下使用NETSH有点复杂,在这种情况下,将需要2个批处理文件。一个启动NETSH,另一个启动NETSH在启动后执行。

关于如何完成操作,这是一篇不错的文章:

https://www.techrepublic.com/article/build-your-skills-netsh-scripts-add-network-functionality-to-batch-files/

希望这对偶然发现此问题的人有所帮助。