linux - telnet-скрипт с ожиданием

Я писал bash-скрипт, который общается с сервером через telnet, но сейчас мне нужно оценить ответ от сервера.

Использование:

./edit.bash | telnet

BASH скрипт:

echo "open ip port"
echo "login user pass"
echo "select 1"
echo "me"
echo "edit id=ID group=3"
echo "exit"

Если я отправлю команду «мне», я получу ответ от сервера, который мне нужно оценить.

Ответ от сервера выглядит как этот пример ... «ник = NICK id = ID group = GROUP login = LOGIN».

Мой друг сказал мне, что мне нужно искать "expect", а не "bash", но мои знания о expect прямо сейчас НУЛЬ: p

Никогда раньше этим не пользовался ...


person am1    schedule 13.09.2014    source источник
comment
Как правило, здесь вы получите более точные ответы, если сначала попробуете сами. Прочтите о expect, попробуйте написать несколько сценариев, а если что-то не сработает, вы можете прийти сюда с конкретными примерами.   -  person larsks    schedule 14.09.2014
comment
Взгляните на stackoverflow.com/questions/11250564/   -  person Dinesh    schedule 14.09.2014
comment
Хорошо, я преобразовал свой сценарий в ожидаемую версию, но функция комментариев не дает мне хорошей функции ответа, поэтому я создал новую запись в стеке: ссылка   -  person am1    schedule 19.09.2014
comment
Хороший набор руководств для expect: wiki.tcl.tk/11584. Пройдите через них. Кроме того, если вы решите пойти по пути ожидания, узнайте немного о tcl (это язык, на котором написаны сценарии ожидания).   -  person slebetman    schedule 26.11.2015