2017-10-20 109 views
-1

我想运行这是一个1行命令(而不是从一个批次),但不过我试试,我能不能成功:获取存储WiFi网络与一个cmd oneliner

(for /f "tokens=2 delims=:" %%a in ('netsh wlan show profiles ^| findstr "Profile"') do (
 
    set str=%%a 
 
    set str=!str:~1! 
 
    echo !str! 
 
)) >> wifi_networks.txt

这是我的尝试:

(for /f "tokens=2 delims=:" %%a in ('netsh wlan show profiles ^| findstr "Profile"') do (set str=%%a & set str=!str:~1! & echo !str!)) >> wifi_networks.txt

请帮忙吗?

回答

0

当使用一个批处理文件时,你加倍了%'s,因为你不是他们应该被返回到单一。

试试这个,(未经测试)

(For /F "Tokens=2Delims=:" %A In ('NetSh WLAN Show Profiles^|Find "Profile"') Do @For /F "Tokens=*Delims= " %B In ("%A") Do @Echo %B)>>"wifi_networks.txt" 

如果wifi_networks.txt已经不存在,您可以更改>>>

+0

谢谢!完美的作品! – agocska