Recuperando o nome, a qualidade e o nível de sinal do SSID específico usando iwlist

0

Estou fazendo um projeto sobre o RSSI e tenho que recuperar o nível de sinal de um SSID WiFi específico em que estou trabalhando usando a linha de comando do linux.

Eu usei o comando de varredura iwlist mas não consegui exibir os valores que eu quero usando grep para imprimir apenas o nome SSID, Quality e Signal Level. / p>

Comandos que tentei não me deram os resultados desejados:

  1. iwlist de leitura de interface INTERFACE SpecificESSID | grep Signal

  2. iwlist de leitura de interface INTERFACE SpecificESSID | grep ESSID, Signal

  3. varredura de INTERFACE do iwlist | grep 'ESSID: "SpecificESSID" \ | Nível de sinal' - Isso quase funcionou, mas também exibiu outros níveis de sinal de rede e eu só preciso de uma informação de rede específica.

por Terence Chew 29.03.2018 / 05:30

1 resposta

0

Primeiro, iwlist é o comando antigo, há o mais recente comando iw com mais recursos.

Se o "SSID em que você está trabalhando" for o ponto de acesso (AP) ao qual você está conectado no momento, use

iw wlan0 station dump

escolha o (s) valor (es) em que você está interessado (por exemplo, intensidade média do sinal) e, em seguida, algo como

iw wlan0 station dump | grep 'signal avg:'

Para o AP atualmente conectado, você realmente tem informações mais detalhadas do que para todos os APs.

Se você quiser força de sinal para todos os APs visíveis, faça algo como

iw wlan0 scan | egrep 'SSID|signal'

Você pode pós-processar isso para SSIDs nos quais você está interessado. Digamos que você queira SSID1 e SSID2, então você pode fazer

iw wlan0 scan | egrep 'SSID|signal' | egrep -B1 'SSID1|SSID2'

O -B1 exibe a linha antes da correspondência, porque na saída de varredura, a intensidade do sinal vem antes do SSID.

    
por 29.03.2018 / 07:12