连接的WLAN是否有变量?

时间:2018-12-24 10:10:02

标签: variables cmd wlan

我开始编写这个小批处理文件,并在其中获取所有wlan数据:

netsh wlan show profile (name) key=clear

这不是问题,但是我要问是否有一个变量,例如:

%CurrentWlan%

所以我可以做:

netsh wlan show profile %CurrentWlan% key=clear >wlan.txt 

1 个答案:

答案 0 :(得分:1)

这是一个可能的解决方案:

@echo off

for /f "eol=B tokens=*" %%A IN ('netsh wlan show interfaces ^| findstr SSID') do (
    for /f "delims=: tokens=2" %%A IN ("%%A") do (
        for /f "tokens=*" %%A IN ("%%A") do (
            netsh wlan show profiles "%%A" key=clear >wlan.txt
        )
    )
)

我将要细分的内容:

  • 我们首先解析命令netsh wlan show interfaces的输出,以搜索SSID字符串。由于还有一行包含B SSID 的行,因此我们用eol=B将其忽略。
    • 现在,我们想在 :符号后解析值,因此我们将其设置为分度符。现在,可以将tokens设置为2来访问网络名称。
      • 我们使用另一个for循环(将tokens的{​​{1}}选项指定为*来删除结果中所有不需要的空格。
        • 因此,现在,我们需要有关当前连接的网络(%%A)的所有信息。我们将输出重定向到wlan.txt