如何通过命令行/Shell脚本从etc/wpa_supplicant/wpa_supplicant.conf中删除网络配置文件 [英] How to delete a network profile from etc/wpa_supplicant/wpa_supplicant.conf through command line / shell script

查看:665
本文介绍了如何通过命令行/Shell脚本从etc/wpa_supplicant/wpa_supplicant.conf中删除网络配置文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的etc/wpa_supplicant/wpa_supplicant.conf中保存了多个wifi网络ssid,如下所示, 我们可以从此wpa_supplicant.conf

I have multiple wifi network ssid's saved in my etc/wpa_supplicant/wpa_supplicant.conf like shown below, can we delete a specific network from this wpa_supplicant.conf

例如:在以下网络中,可以通过Shell脚本删除网络myssid1,然后我可以通过node.js服务器执行

Ex: in the below networks can a delete the network myssid1 through a shell script which i can then execute through node.js server

 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
    }

推荐答案

我能够使用以下脚本完成此任务:

i was able to get it done with the below script:

SSID_TO_DELETE=$1 
sed -n "1 !H 1 h $ { x s/[[:space:]]*network={\n[[:space:]]*ssid=\"${SSID_TO_DELETE}\"[^}]*}//g p }" /etc/wpa_supplicant/wpa_supplicant.conf > /etc/wpa_supplicant/wpa_supplicant.conf 

这篇关于如何通过命令行/Shell脚本从etc/wpa_supplicant/wpa_supplicant.conf中删除网络配置文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆