Получить логическое имя беспроводной сети

Я пытаюсь получить все беспроводные интерфейсы, доступные на компьютере. Например, если я использую две сетевые карты с логическим именем wlan0 и ra0 соответственно, то я хочу их распечатать.

Это то, что я пытался, но я не получаю никакого вывода:

 sudo lshw -C network | awk 'if (/description: / $2 == "Wireless") { /logical name: /{printf $3 "\n";}}' 

Я получаю синтаксические ошибки:

 awk: line 1: syntax error at or near if awk: line 1: syntax error at or near } 

Выход без части awk :

 *-network description: Network controller product: BCM4313 802.11bgn Wireless Network Adapter vendor: Broadcom Corporation physical id: 0 bus info: pci@0000:05:00.0 version: 01 width: 64 bits clock: 33MHz capabilities: pm msi pciexpress bus_master cap_list configuration: driver=bcma-pci-bridge latency=0 resources: irq:17 memory:96400000-96403fff *-network description: Ethernet interface product: RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller vendor: Realtek Semiconductor Co., Ltd. physical id: 0 bus info: pci@0000:06:00.0 logical name: enp6s0 version: 02 serial: 88:ae:1d:da:9e:99 size: 10Mbit/s capacity: 100Mbit/s width: 64 bits clock: 33MHz capabilities: pm msi pciexpress msix vpd bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=half latency=0 link=no multicast=yes port=MII speed=10Mbit/s resources: irq:24 ioport:2000(size=256) memory:92410000-92410fff memory:92400000-9240ffff memory:95400000-9541ffff *-network description: Wireless interface physical id: 3 logical name: wlp5s0b1 serial: 00:26:82:e7:b8:32 capabilities: ethernet physical wireless configuration: broadcast=yes driver=brcmsmac driverversion=4.4.0-53-generic firmware=610.812 ip=192.168.0.14 link=yes multicast=yes wireless=IEEE 802.11bgn 

Обновление: если есть лучший способ получить то, что я хочу, я был бы рад принять такой ответ.

One Solution collect form web for “Получить логическое имя беспроводной сети”

 awk -F": " -v line=-1 '{if($2=="Wireless interface"){ line=NR+2}; if (line==NR){print $2}}' youfile 
  • -F установить разделитель
  • -v передать переменную со значением
  • NR строки NR

Я получаю второй элемент со второй строки после получения "Wireless interface"

  • Сравнение двух файлов и запись несогласованных строк вместе с несогласованными столбцами. Указание несогласованных столбцов - это моя основная проблема
  • Простой сценарий оболочки Korn должен содержать список всех файлов, созданных / измененных после tidemark date
  • Простой сценарий bash для резервного копирования и удаления каталогов
  • scp при попытке скопировать файлы из Linux в windows
  • Shell Scripting: вычислить мощность числа с реальным числом в качестве показателя
  • Как эскалировать сигнал?
  • Ошибка при запуске скрипта PL / SQL
  • получить бесплатную строку жанра id3-tag, а не только номер жанра в сценарии bash
  • Может ли кто-нибудь уточнить для меня о глобальной переменной в этом сценарии оболочки?
  • Клавиша со стрелкой / Ввод меню
  • поиск файла внутри скрипта
  • Массовое переименование и изменение размера с помощью Imagemagick
  • Linux и Unix - лучшая ОС в мире.