[#] ifconfig: список интерфейсов + пару фиксов к auto-wifi.sh
soko1(lenina,128) — All
2014-07-30 04:01:27


Огорчило то что в ifconfig нет аргумента командной строки для вывода всех доступных сетевых интерфейсов. Имхо, штука полезная. Было бы неплохо предложить такой функционал разработчикам.

Пришлось написать большой костыль, чтобы определить скажем все доступные wifi-интерфейсы на машине:

ifconfig | pcregrep -M -o '^[^\t:]+:([^\n]|\n\t)*groups: wlan' | head -n 1| awk {'print $1'} | sed s/://

А ещё вновь чуток пофиксил скрипт для wifi-коннектов который форкнул не так давно: https://github.com/soko1/OpenBSD/commit/32bd53f6bf9f2ca6d13bf637f60f10b29bad986b

1) ранее автор выводил список доступных интерфейсов странным `dmesg | grep 'address' | awk '{ print $1 }' ` с кучей дублей и интерфейсов не в тему (не wifi)
2) пароль от wifi при вводе светился на экране, что не есть гуд

[#] Re: ifconfig: список интерфейсов + пару фиксов к auto-wifi.sh
zhuk@(lenina,131) — soko1
2014-07-30 13:12:38


Зачем так сложно? :)

ifconfig | perl -ne 'if(/^\S/){s/:.*//;print}'

Насчёт "предложить разработчикам" - такие вещи только вместе с уже готовым патчем.

[#] Re: ifconfig: список интерфейсов + пару фиксов к auto-wifi.sh
51t(lenina,1) — zhuk@
2014-07-30 13:15:15


не ломайте ifconfig, пожалуйста! :) мало того, что без openbsd сижу, потому что без ext2 ничего сделать не могу, так ещё и сеть не хватало сломать :)

лучше готовый патч - уже только после многочисленных тестирований :)

[#] Re: ifconfig: список интерфейсов + пару фиксов к auto-wifi.sh
soko1(lenina,128) — zhuk@
2014-07-30 17:12:11


Угу, это я ночью просто писал сонный. Сейчас переделал так: ifconfig | perl -ne '$i=$1 if /^(\S+):/; print $i."\n" if /groups: wlan/'

Ага, понял. А куда отправлять лучше такие патчи?

[#] Re: ifconfig: список интерфейсов + пару фиксов к auto-wifi.sh
zhuk@(lenina,131) — soko1
2014-07-30 19:37:47


Патчи к базовой системе (и вообще конкретные _готовые_ для включения в репозиторий предложения) отправляй сразу на tech@openbsd.org . Желательно - inline и не из Web-интерфейса (оные часто портят текст патчей). Я обычно делаю "cvs diff >cool.patch", правлю файл и затем "mail -s 'Here is my patch for /usr/bin/true' tech@openbsd.org <cool.patch". Последняя команда работает за счёт того, что в конфиге OpenSMTPD прописано,как отправлять почту от моего имени через аккаунт в GMail.