web-dev-qa-db-fra.com

Comment rechercher des points d'accès sans fil?

Dans Ubuntu 11.04, j'ai utilisé InSSIDer pour analyser les points d'accès disponibles et les trier en fonction de la puissance du signal.

Malheureusement, le programme semble être interrompu dans Ubuntu 11.10, et

iwlist wlan0 scan

ne retourne rien de significatif.

Quelles options dois-je rechercher pour rechercher le point d'accès sans fil disponible, éventuellement avec une interface graphique?

14
Mascarpone

Sudo iwlist wlan0 scanning | egrep 'Cell |Encryption|Quality|Last beacon|ESSID' devrait aider.

C'est la combinaison de Sudo (exécuté en tant qu'utilisateur root, exécutez des opérations privilégiées), iwlist wlan0 scanning (produit une sortie sur STDOUT), du symbole de tuyau "|" (reliant STDOUT des commandes situées à gauche au STDIN du processus à droite), et une commande egrep avec une "simple citation" (pour empêcher le shell d'interpréter les caractères "|") Expression régulière à filtrer STDIN. Voir man bash, man Sudo, man iwlist, man egrep et man re_format pour plus de détails.

TOUJOURS faire ce que vous voulez (comme ci-dessus) AVANT d'exécuter une chaîne de commande de quelqu'un d'autre. L'auto-éducation est beaucoup plus sûre que la confiance aveugle.

18
waltinator

Utilisation de iwname__

Je n'ai pas nm-tool installé donc j'utilise iwNAME _ .

Cette commande trie les points d’accès par force du signal, la plus forte en premier:

Sudo iw dev wlan0 scan | egrep "signal|SSID" | sed -e "s/\tsignal: //" -e "s/\tSSID: //" | awk '{ORS = (NR % 2 == 0)? "\n" : " "; print}' | sort

Chaque commande a expliqué:

iw dev wlan0 scan: recherche les points d’accès accessibles via l’interface wlan0

egrep "signal|SSID": obtenez les lignes avec la force du signal et les SSID de la sortie de iwname __. La sortie ressemble à ceci maintenant:

        signal: -77,00 dBm 
 SSID: nomDeAccessPoint1 
 signal: -71,00 dBm 
 SSID: nomDeAccèsPoint2

sed -e "s/\tsignal: //" -e "s/\tSSID: //": Réduire la sortie de egrepname __ dans ceci:

-77,00 dBm 
 NameOfAccessPoint1 
 - 71,00 dBm 
 NameOfAccessPoint2

awk '{ORS = (NR % 2 == 0)? "\n" : " "; print}': Ramenez la force du signal et le SSID sur la même ligne. Plus précisément, lorsque le numéro de ligne (NRname__) est pair, c’est-à-dire que nous sommes sur une ligne montrant un point d’accès, le séparateur d’enregistrement de sortie (ORSname__) doit être un saut de ligne. Sinon, nous sommes sur la ligne contenant la force du signal. Nous joignons la ligne en faisant ORSun simple espace.

Si nous sortcette sortie, nous obtenons une liste des forces du signal et des points d'accès, indiquant le point d'accès avec le signal le plus fort en haut:

-71.00 dBm nameOfAccessPoint2
-77.00 dBm nameOfAccessPoint1
6
Matthias Braun
nm-tool | grep "Freq.*Strength" | sed -ne "s|\(.*Strength \([0-9]\+\).*\)|\2}\1|p" | sort -n -r
  1. Utilisez la sortie de nm-tool pour obtenir la liste des points d’accès sans fil.
  2. Filtre pour obtenir des points d'accès uniquement
  3. Utilisez sed pour ajouter le niveau de signal devant chaque ligne
  4. trier la sortie sous forme de nombres dans l'ordre inverse (le plus grand en premier)

nm-tool fait partie du paquet "network-manager" qui est évidemment installé sur un système Ubuntu typique.

5