802.11 IEEE - это стандарт для беспроводных сетевых устройств, который определяет набор спецификаций для физического и MAC-уровней модели OSI (если вы хотите узнать больше о сети, вы должны обязательно получить знаком с ней).
Большинство версий обычно работают в диапазоне 2,4 / 5 ГГц и обычно имеют обратную совместимость.
Следующая команда является вариантом ifconfig только для беспроводной сети:
iwconfig
В Ubuntu и Debian она является частью пакета wireless-tools .
ifconfig показывает все доступные (также виртуальные) сетевые интерфейсы, соответствующие стандартам беспроводной и проводной 802.x (802.3x является примером стандарта, используемого в проводных сетях).
iwconfig предназначен исключительно для беспроводных интерфейсов, таких как 802.11x (также поддерживаются некоторые версии до 802.11).
Эти команды также используются для выполнения расширенной настройки ваших интерфейсов. Обратитесь к их руководству для получения дополнительной информации.
Изменить : поскольку iwconfig в настоящий момент устарел (но достаточно прост, чтобы запросить основные функции интерфейса) и новых значительных обновлений не ожидается, я предлагаю вам взглянуть на iw
(для которого требуется довольно свежее ядро> = 3.0. У вас не должно возникнуть проблем с его запуском в вашей ОС Ubuntu 15.10).
iw dev
Эта команда возвращает все доступные беспроводные интерфейсы. Затем вы можете запустить iw dev
или iw phy
.
Первая команда показывает краткую информацию об интерфейсе, а вторая показывает все возможности беспроводного устройства.
Это делает (строго )то, о чем вы просите:
awk '{ print $1, (($2>2)&&($2<4))?"Low)":"High)" }'
Но он использует тот факт, что строка типа9.0)
(с завершающей скобкой )преобразуется в число 9
с помощью awk. Это может привести к сбою, если, например, будет добавлен пробел.
Более строгим решением является также использование закрывающей скобки в качестве разделителя поля, чтобы удалить ее из содержимого поля с номером 2
.
awk -F'[ )]' '{print $1,(($2>2)&&($2<4))?"Low)":"High)"}'
Я пробовал с условием if и else
sed "s/)$//g" filename| awk '{if($2 > 2 && $2 < 4) {$2="low)";print $0}else{$2="high)";print $0}}'
property(Address1, high)
property(Address2, low)
property(Address3, high)
property(Address4, low)
С perl
предполагается, что числа имеют формат [-]<digits>[.<digits>]
, и сопоставление их, где бы они ни находились во входных данных, при условии, что им не предшествуют и не следуют слово символы (, поэтому Address1
не меняется на AddressHigh
, например):
<input perl -pe 's{(?<!\w)-?\d[\d.]*(?!\w)}{$& >=2 && $& <=4 ? "Low" : "High"}ge'