Как получить подключенную Wi-Fi сеть SSID?

Я хочу получить ssid в настоящее время подключенных сетей Wi-Fi в сценарии bash. Я пытаюсь написать сценарий резервного копирования, в котором он будет выполнять резервное копирование на сервер NAS, если он подключен к моей домашней сети Wi-Fi. Я посмотрел на команду ip route, но она возвращает только некоторую основную информацию - enter image description here

8
задан 18 April 2013 в 10:09

7 ответов

nmcli -t -f NAME connection show --active
  • -t Делает вывод 'кратким' так никакие заголовки
  • -f NAME Шоу только ssid
  • --active Шоу только активные соединения
0
ответ дан 18 April 2013 в 10:09
iwgetid -r

или

iwgetid wlan0 -r
0
ответ дан 18 April 2013 в 10:09

Эта команда возвращает SSID подключенного беспроводного адаптера (при условии, что у вас есть только один).

iwconfig | grep ESSID | sed -e 's/.*ESSID:"\(.*\)".*/\1/'

Он также выводит предупреждение на терминал, но на stderr, так что это не имеет значения

remi@host~$id:~$ id=$(iwconfig | grep ESSID | sed -e 's/.*ESSID:"\(.*\)".*/\1/')
eth0      no wireless extensions.
lo        no wireless extensions.
virbr0    no wireless extensions.
tap0      no wireless extensions.

remi@host:~$ echo $id
CISPI
0
ответ дан 18 April 2013 в 10:09

Как насчет iwconfig wlan0 | sed -e '/ESSID/!d' -e 's/.*ESSID:"/"/'?

0
ответ дан 18 April 2013 в 10:09

Следующее должно предоставить то, что вы ищете, если вы подключены с помощью 1 беспроводного устройства:

nmcli -t -f ssid dev wifi| cut -d\' -f2
0
ответ дан 18 April 2013 в 10:09

Я пробовал это:

    iwconfig wlan0 | grep ESSID | cut -d\" -f2
0
ответ дан 18 April 2013 в 10:09

С NetworkManager-1.8.4 это дало правильный результат

LANG=C nmcli -t -f active,ssid dev wifi | grep ^yes | cut -d: -f2-

Существует причина для каждой части команды

  • LANG=C, потому что мы используя grep для локализованной строки, так что принудительный английский
  • nmcli ... -f active,ssid ... заставляет печатать ssid с активным статусом в форме yes:myssid no:otherssid
  • grep ^yes, мы хотим фильтровать активные соединения, но SSID с текстом «да», поэтому это является причиной того, что ^
  • cut ... -f2- печатает остальную часть строки после первого разделителя, поэтому мы можем иметь SSID с разделителем в нем
0
ответ дан 18 April 2013 в 10:09

Другие вопросы по тегам:

Похожие вопросы: