Como posso obter o nome do ESSID apenas com o qual me conectei?

6

Eu tentei $iwconfig | grep wlan0 , mas tudo que consegui foi a linha em que meu nome de ESSID conectado existe. Mas eu só preciso do nome.

Como obtenho apenas o nome?

    
por Ibrahim 04.11.2012 / 17:37

2 respostas

6

Não sei se esta é a melhor solução, mas tente isto:

Para o nome do essid:

iwconfig wlan0 2> /dev/null | awk -F\" '{print }'

Para o modo de ponto de acesso (conforme solicitado no comentário):

iwconfig wlan0 2> /dev/null | awk -F: '/Mode:/ {print }' | awk '{print }'

Para o link Qualidade (conforme solicitado no comentário):

iwconfig wlan0 2> /dev/null | awk -F= '/Quality/ {print }' | awk '{print }'

Para o canal, (conforme solicitado no comentário), tente isto:

sudo iwlist wlan0 scanning essid ESSID | grep Channel | head -1 | awk -F: '{print }'

Certifique-se de substituir o ESSID pelo seu essid:

Para o endereço, (conforme solicitado no comentário), tente isto:

ifconfig wlan0 2> /dev/null | awk -F: '/inet\ addr/ {print }' | awk '{print }'
    
por Sam 04.11.2012 / 18:26
1

Depois de brincar com toneladas de comandos, flags, greps, trims, awks e seds diferentes, finalmente decidi:

iwgetid -r

Simples e limpo. Isso produzirá o SSID e nada mais. Anteriormente, eu estava usando esse clunker:

iwconfig <iface> | grep ESSID | awk -F: '{print }' | sed 's/\"//g'

Uma das minhas coisas favoritas sobre o mundo * nix é a capacidade de juntar um monte de comandos e programas que utilizam entrada e saída padrão para alcançar o que eu preciso. No entanto, quando um único sinalizador pode ser passado para um programa como iwgetid para realizar a mesma coisa, não é mais uma decisão entre qual usar. É um teste de QI.

Tenha em mente que você ainda pode especificar diferentes interfaces de rede sem fio usando o iwgetid da seguinte forma:

iwgetid <iface> -r
    
por Derek 02.03.2017 / 21:15