如何将当前连接的 wifi 网络的 SSID 分配给批处理脚本中的变量? [复制]
Posted
技术标签:
【中文标题】如何将当前连接的 wifi 网络的 SSID 分配给批处理脚本中的变量? [复制]【英文标题】:How to assign the SSID of current connected wifi network to a variable in a batch script? [duplicate] 【发布时间】:2021-04-26 16:10:21 【问题描述】:我正在尝试编写一个与 wifi 网络断开连接并在一段时间后重新连接到同一网络的批处理脚本。在这种情况下,它必须记住之前连接的网络 SSID,例如将其存储到变量中。
netsh wlan disconnect
timeout 5
netsh wlan connect name=PreviousNetwork
我可以从中找到 SSID 名称
netsh wlan show networks interface="Wi-Fi" mode=ssid
但是我该如何存储呢?
【问题讨论】:
这能回答你的问题吗? How to know which SSID I am connected in Windows batch file? 【参考方案1】:这是一个方法,请尝试一下:
@echo off
Title How to assign the SSID of current connected wifi network to a variable in a batch script
for /f "delims=: tokens=2" %%n in (
'netsh wlan show interface name="Wi-Fi" ^| find /i "PROFIL"'
) do set "Network=%%n"
Call :Trim "%Network%" Connected_SSID
echo The Current SSID Connected is : "%Connected_SSID%"
echo Did you want to disconnect from this SSID "%Connected_SSID%" ?
pause
cls & echo( & color 0C
netsh wlan disconnect
TimeOut /T 5 /NoBreak>nul
cls & echo( & color 0A
echo Did you want to re-connect to this SSID : "%Connected_SSID%" ?
pause
netsh wlan connect name="%Connected_SSID%"
Pause & Exit
::---------------------------------------------------------------------------
:Trim <String>
(
echo Wscript.echo Trim("%~1"^)
)>"%tmp%\%~n0.vbs"
@for /f "delims=" %%a in ('Cscript /nologo "%tmp%\%~n0.vbs"') do set "%2=%%a"
exit /b
::---------------------------------------------------------------------------
【讨论】:
vbscript 怎么了?它不必要地强迫您写入磁盘。只需将您的修剪功能更改为:for /f "tokens=*" %%_ IN ("%~1") DO SET "%2=%%_"
无需 VBScript 或写入磁盘。
@BenPersonick 这仅适用于左修剪??我想左右修剪!
哦,对不起,我在手机上写了这个,没有看到你的回复,我只是把我的代码写得有点不对,改用这个:for /f "tokens=*" %%_ IN ("%~1") DO SET "%2=%%~nx_"
没有必要使用VB 或写入磁盘,这将根据您的目的左右修剪。 TBF 你甚至不需要调用标签for /f "delims=: tokens=2" %%_ in ('netsh wlan show interface name="Wi-Fi" ^| find /i "PROFIL"') do set "Network=%%~nx_"
实际上,此外,由于 SSID 本身不能包含空格,因此您实际上可以将结果传递给标签调用而不用引号括起来,然后返回它,因为 %1 将只是连续的非空白字符。以上是关于如何将当前连接的 wifi 网络的 SSID 分配给批处理脚本中的变量? [复制]的主要内容,如果未能解决你的问题,请参考以下文章