[bash] Помогите со скриптом (wpa_supplicant + dhcpcd)

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Аватара пользователя
Naruto-kun
Сообщения: 228
Статус: небритый гентушник
ОС: Gentoo(PC)/easypeasy(Netbook)

[bash] Помогите со скриптом

Сообщение Naruto-kun »

Есть ноутбук, к инету подключаюсь с помощью двух команд:

Код: Выделить всё

# wpa_supplicant ..... &
# dhcpd eth1

Процесс подключения происходит следующим образом:
Я запускаю wpa_supplicant, как только вижу от него сообщения: connected, жму Ctrl+C и запускаю dhcpd имя_устройства.
wpa_supplicant же продолжает работать в фоне.

Хочется написать простой скрипт, который бы запускал wpa_supplicant, и как только появлялось бы connected, сразу симулировал нажатие клавишь Ctrl+C и запускал dhcpcd имя_устройство.

Я вижу это примерно так:
Загонять все логи wpa_supplicant в файл: wpa_supplicant .... > log_wpa_temp
Смотреть файл, как только появится connected как-то прерывать, наверно что-то вроде exit.
Запускать dhcpcd имя_устройства.

Подскажите, в верном направлении двигаюсь, или может это можно написать проще?

UP
Как вариант использовать думаю использовать:

Код: Выделить всё

...
status=0
while [ $status -ne 1 ]; do
        wpa_supplicant ... > tmp_wpa_log
        tmp_line=`cat tmp_wpa_log`
        if [ $tmp_line = "connected ..."] # здесь пока поставил ... - точно сейчас не могу сказать, что точно за строку выдаёт wpa_supplicant, когда connect
           status=1
           команда_на_выход_и_чтобы_wpa_supplicant_продолжал_работать_ф_фоне
        fi
done
dhcpd eth1
exit
...
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Если на вопрос ни кто не знает ответа, то пора читать описание.
Спасибо сказали:
Аватара пользователя
Ariasp
Сообщения: 254
Статус: NixLander

Re: [bash] Помогите со скриптом

Сообщение Ariasp »

Naruto-kun писал(а):
16.04.2009 15:28
Хочется написать простой скрипт, который бы запускал wpa_supplicant, и как только появлялось бы connected, сразу симулировал нажатие клавишь Ctrl+C и запускал dhcpcd имя_устройство.

Чем не устраивает системный конфиг /etc/conf.d/net?
Спасибо сказали:
Аватара пользователя
Naruto-kun
Сообщения: 228
Статус: небритый гентушник
ОС: Gentoo(PC)/easypeasy(Netbook)

Re: [bash] Помогите со скриптом

Сообщение Naruto-kun »

Да не знаю, я уже привык подрубаться к своему роутеру по вай-фаю, на роутере wpa. С wpa_supplicant всё просто.
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Если на вопрос ни кто не знает ответа, то пора читать описание.
Спасибо сказали:
Аватара пользователя
Ariasp
Сообщения: 254
Статус: NixLander

Re: [bash] Помогите со скриптом

Сообщение Ariasp »

Naruto-kun писал(а):
16.04.2009 16:43
Да не знаю, я уже привык подрубаться к своему роутеру по вай-фаю, на роутере wpa. С wpa_supplicant всё просто.

А в чём сложности? Вот пример /etc/conf.d/net для wifi-карты
modules=( "wpa_supplicant" )
config_wlan0=("dhcp")

и net.wlan0 в автозагрузке.
Спасибо сказали:
Аватара пользователя
Naruto-kun
Сообщения: 228
Статус: небритый гентушник
ОС: Gentoo(PC)/easypeasy(Netbook)

Re: [bash] Помогите со скриптом

Сообщение Naruto-kun »

Ну это верно. Но всё же интересно по поводу скрипта. Скажем так, для общего развития.
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Если на вопрос ни кто не знает ответа, то пора читать описание.
Спасибо сказали:
pcodr
Сообщения: 283
ОС: Debian

Re: [bash] Помогите со скриптом

Сообщение pcodr »

Что-нибудь типа такого:

Код: Выделить всё

wpa_supplicant | while read line
do
     [ "$line" = "connected ..." ] && dhcpd eth1
done
remote system type is unix
Спасибо сказали:
Аватара пользователя
Naruto-kun
Сообщения: 228
Статус: небритый гентушник
ОС: Gentoo(PC)/easypeasy(Netbook)

Re: [bash] Помогите со скриптом

Сообщение Naruto-kun »

Хмм, спасибо. Буду дома, попробую ваше предложение.
Компьютер позволяет решать все те проблемы, которые до изобретения компьютера не существовали.
Если на вопрос ни кто не знает ответа, то пора читать описание.
Спасибо сказали: