我正在尝试使用 wpa_cli set_network 命令连接到 wifi,但它总是返回 FAIL

vik*_*vik 5 wifi wpa-cli

krishna@krishna-PC:~/Downloads/wificonnect1$ sudo wpa_cli scan

[sudo] password for krishna: 

Selected interface 'wlan0'

OK

krishna@krishna-PC:~/Downloads/wificonnect1$ sudo wpa_cli scan_results

Selected interface 'wlan0'

bssid / frequency / signal level / flags / ssid
fc:0a:81:1d:6d:80   2412    -43 [WPA2-PSK-CCMP][ESS]    econsys
00:24:01:ba:b4:65   2437    -72 [WPA-PSK-TKIP][WPA2-PSK-TKIP][WPS][ESS] Test
6c:72:20:f2:1a:6b   2412    -60 [WPA-PSK-CCMP][WPA2-PSK-CCMP][ESS]  Hari
c0:ee:fb:31:ec:4a   2447    -76 [WPA2-PSK-CCMP][ESS]    Vishal's hotspot
fc:0a:81:1c:6d:f0   2412    -61 [WPA2-PSK-CCMP][ESS]    econsys
c4:12:f5:08:10:70   2427    -63 [WPA-PSK-CCMP][WPA2-PSK-CCMP][ESS]  GoGreen
f4:f2:6d:6d:23:44   2462    -62 [WPS][ESS]  joyglobal

krishna@krishna-PC:~/Downloads/wificonnect1$ sudo wpa_cli add_network

Selected interface 'wlan0'

1

krishna@krishna-PC:~/Downloads/wificonnect1$ sudo wpa_cli set_network 1 ssid "econsys"

Selected interface 'wlan0'
FAIL
Run Code Online (Sandbox Code Playgroud)

我应该如何连接?

GAD*_*D3R 14

/etc/wpa_supplicant/wpa_supplicant.conf使用以下几行创建一个文件:

ctrl_interface=/run/wpa_supplicant
update_config=1
Run Code Online (Sandbox Code Playgroud)

跑:

wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
Run Code Online (Sandbox Code Playgroud)

类型:

wpa_cli
Run Code Online (Sandbox Code Playgroud)

然后:

scan
scan_results
add_network
Run Code Online (Sandbox Code Playgroud)

示例输出:

0
Run Code Online (Sandbox Code Playgroud)

选择 SSID(替换0为准确的输出):

set_network 0 ssid "Your SSID here"
Run Code Online (Sandbox Code Playgroud)

设置你的密码 :

set_network 0 psk "You Password here"
Run Code Online (Sandbox Code Playgroud)

如果没有双引号,命令将FAIL. 下一步:

enable_network 0
Run Code Online (Sandbox Code Playgroud)

然后:

save_config
quit
Run Code Online (Sandbox Code Playgroud)

如果没有您应该使用的交互式命令(添加单引号):

sudo wpa_cli set_network 1 ssid '"econsys"'
Run Code Online (Sandbox Code Playgroud)

或者

ctrl_interface=/run/wpa_supplicant
update_config=1
Run Code Online (Sandbox Code Playgroud)

代替:

sudo wpa_cli set_network 1 ssid "econsys"
Run Code Online (Sandbox Code Playgroud)

添加密码时也应添加单引号:

sudo wpa_cli set_network 1 psk '"Your Password"'
Run Code Online (Sandbox Code Playgroud)