Further to what has been already answered here, I've merged a few of them and added a little flavor of my own.
As for the nmcli
answer, sure, do that if you want to install more software. But if you're looking for Access Points, maybe you don't have an internet connection yet and are unable to connect to install said software. With all that said, here's my solution:
for i in $(ls /sys/class/net/ | egrep -v ^lo$); do sudo iw dev $i scan | grep SSID | awk '{print substr($0, index($0,$2)) }'; done 2>/dev/null | sort -u
Breaking it down:
for i in $(ls /sys/class/net/ | egrep -v ^lo$);
Lets have a look at all the contents of the location /sys/class/net. This will list all the network devices, but we're not really interested in the loopback interface. so we'll ignore that one
do sudo iw dev $i scan | grep SSID | awk '{print substr($0, index($0,$2)) }';done
For each of the network interfaces we found above, lets do the scan to list all the SSIDs (and only the SSIDs)
2>/dev/null
And ignore all the errors (like searching for SSIDs with ethernet interfaces).
| sort -u
And finally, If you have multiple wi-fi adapters on the system, only list each SSID once.
nmcli dev wifi list
give anything additional to what's shown by the GUI applet?sudo iwlist scan
shows more available networks thaniwlist scan
(withoutsudo
) - so this question by itself is helpful. But perhaps it should be renamed to "How can I display the list of hidden WiFi networks"?