@Postadelmaga의 이전 답변에 유연성을 더하기 위해 SSID 이름을 인쇄하는 데 더 많은 노력을 기울였습니다. 이로 인해 어려움이 추가되었습니다. "never"라는 단어가 포함 된 SSID 이름이 실수로 "never"가 포함 된 타임 스탬프와 일치하지 않도록해야합니다.
또한 이름별로 연결을 제거하는 다른 기능을 만들었습니다.
출처 :
https://github.com/frgomes/debian-bin/blob/master/bash_20nm.sh
#!/bin/bash
function nmcli_list {
nmcli --pretty --fields NAME,UUID,TIMESTAMP-REAL con show
}
function nmcli_remove {
if [ ! -z "$1" ] ;then
nmcli --fields NAME con show | \
grep "$@" | \
while read name ;do
echo Removing SSID "$name"
nmcli con delete "$name"
done
fi
}
##################################################################################
# The intent here is avoid that a connection named "never drive after you drink" #
# matches a timestamp "never". So, we have to make sure that we match colon #
# followed by "never" followed by spaces and/or tabs and finally an end of line. #
# #
# WARNING: However, I didn't get a chance to test this scenario. #
# So, I provide this code the way it is, in the hope that I've covered #
# well the behavior from some other simulations I did. #
##################################################################################
function nmcli_remove_never_used {
nmcli --terse --fields NAME,TIMESTAMP-REAL con show | \
egrep -e ':never[ \t]*$' | \
sed -r 's/:never[ \t]*$//' | \
while read name ;do
echo Removing SSID "$name"
nmcli con delete "$name"
done
}
그런 다음 아래와 같이 특정 연결을 삭제할 수 있습니다.
$ nmcli_remove ScalaX
$ nmcli_remove "My WiFi @ Home"
$ nmcli_remove "never drive after you drink"