我在etc / wpa_supplicant / wpa_supplicant.conf中保存了多个wifi网络ssid,如下所示,
我们可以从此wpa_supplicant.conf中删除特定的网络吗
例如:在以下网络中,可以通过Shell脚本删除网络myssid1,然后我可以通过node.js服务器执行该脚本
network={
ssid="myssid1"
scan_ssid=0
proto=WPA
key_mgmt=WPA-PSK
psk=5f55a9b869e9ab6d03839cae23c7243accc0ac0a12079d358328bf73ad2e0ebe
}
network={
ssid="myssid2"
scan_ssid=0
proto=WPA
key_mgmt=WPA-PSK
psk=d89660510d06bbf7691f5296daae36872d697a88876c53db7de91aa85df4f68b
}
network={
ssid="myssid3"
scan_ssid=0
proto=WPA
key_mgmt=WPA-PSK
psk=d635b33481a13b28a67e8964f58343cb19bc8c85c67cc56ee9bfe0c302914a5f
}
解决方法:
使用wpa_cli您可以执行以下操作:
1:
wpa_cli remove_network 0
其中0是运行wpa_cli add_network后获得的network_id.它将删除网络并断开使用该网络的任何接口.
请注意,网络ID不是文件中网络的顺序.您可以使用wpa_cli list_networks获取已配置的网络
2:
wpa_cli save_config
这将保留更改,并且将从etc / wpa_supplicant / wpa_supplicant.conf中删除相应的网络块
标签:shell,node-js,raspberry-pi,linux,raspbian
来源: https://codeday.me/bug/20191028/1954093.html