You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从nmcli dev wifi列表中移除重复及空SSID?

如何移除nmcli扫描结果中的重复SSID及空SSID?

场景1:仅提取SSID列表(对应nmcli -f SSID dev wifi)

直接用管道组合工具过滤空SSID并去重:

nmcli -f SSID dev wifi | awk 'NR==1 || ($1 != "--")' | sort -u
  • awk部分保留表头,同时剔除内容为--的空SSID行
  • sort -u自动完成排序和去重,最终输出就是你要的唯一非空SSID列表:
SSID
V-ODT
RTU240-156B
fortinet

场景2:保留完整扫描信息(对应nmcli dev wifi list --rescan yes)

如果需要保留多列的完整信息,同时过滤空SSID并对每个SSID去重,推荐保留信号最强的条目(更实用):

nmcli dev wifi list --rescan yes | awk '
    BEGIN { print $0 }
    NR>1 && $3 != "--" {
        if (!ssid[$3] || $7 > ssid[$3]["signal"]) {
            ssid[$3]["line"] = $0
            ssid[$3]["signal"] = $7
        }
    }
    END {
        for (i in ssid) print ssid[i]["line"]
    }' | column -t
  • 先打印表头,然后遍历所有非空SSID行,用数组记录每个SSID的最高信号条目
  • 最后输出所有唯一SSID的最强信号行,column -t确保列对齐

如果只是简单去重(保留首次出现的非空SSID行),用这个更简洁的命令:

nmcli dev wifi list --rescan yes | awk 'NR==1 || ($3 != "--" && !seen[$3]++)' | column -t

内容的提问来源于stack exchange,提问作者01k02t

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 07:57:37