我正在尝试检测我的Windows 10膝上型计算机连接到的SSID,并根据检测到的SSID来决定该做什么。我能够通过以下命令检测SSID:
netsh wlan show interfaces | findstr /r "^....SSID"此命令输出如下:
SSID :my_ssid 我试图使用以下命令将这个字符串输出赋值给一个变量:
set ssid=
for /f %%i in ('netsh wlan show interfaces | findstr /r "^....SSID"') do set ssid=%%i
echo SSID is "%ssid%"但是,我一直收到以下错误消息:
| was unexpected at this time.有人知道为什么吗?
另外,是否可以去掉"SSID“、":”和空格的netsh输出,以便我只获得"my_ssid“作为输出?
发布于 2017-11-07 03:46:29
在for循环中使用管道时,需要使用^转义。否则,解释器会认为您正在将整个循环一直到那个点,而for /f %%i in ('netsh wlan show interfaces是无效的语法。
for /f %%i in ('netsh wlan show interfaces ^| findstr /r "^....SSID"') do set ssid=%%ihttps://stackoverflow.com/questions/47149561
复制相似问题