chat - это язык сценариев общего назначения, применяемый для управления модемом, выполнения звонка и регистрации на удаленном сервере, chat не столь функционален, как dip, но достаточно широко используется. Структура сценария chat - «ожидание/передача» - является общей для большинства подобных языков.
chat-еценарий состоит из пар ожидание/передача. Пара состоит из двух значений, разделенных пробельными символами. Первое значение представляет строку, которая ожидается от удаленной системы, второе - строку, которую следует передать в ответ. Специальный случай, когда нет необходимости получать строку от удаленной системы, обозначается парой двойных ("") или одинарных (" ) кавычек. В качестве примера рассмотрим простейший сценарий:
"" \r name > jane word> TOga!toGA
Сценарий не ожидает получения каких-либо строк (""), пока удаленной системе не будет передан символ возврата каретки (\г). Затем сценарий ожидает получения от удаленной системы строки name>, которая является частью системного приглашения Username>. В ответ на приглашение сценарий передает регистрационное имя пользователя, jane. Наконец, сценарий ожидает получения части приглашения Password> и отвечает паролем TOga! toGA. Сценарий настолько простой, что его можно создать прямо в командной строке программы chat:
% chat -v -t30 "" \r name> jane word> TOgaltoGA
Приведенная команда запускает chat в режиме подробной диагностики, устанавливает длительность ожидания строки в 30 секунд, а затем выполняет простой сценарий регистрации в удаленной системе. Синтаксис команды chat:
chat [ключи] [сценарий]
Ключи команды chat:
-е - Отображать на экране вывод модема в поток stderr. Идентичный результат можно получить при помощи ключевого слова ECHO в chat-сценарии.
-Е - Разрешает использование переменных среды в тексте сценария.
-s - Предписывает направлять все записи журнала и сообщения об ошибках в поток stderr.
-S - Запрещает направлять сообщения журнала и сообщения об ошибках службе SYSLOG.
- Назад
- Вперёд >>