Это команда expect-lite, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
expect-lite - быстрый и простой инструмент автоматизации командной строки
СИНТАКСИС
ожидать-облегчить [-вв] -c [-r ] [КОНСТАНТА = значение] [* ДИРЕКТИВА] [-h | --help]
or
скрипт.elt [-вв] [r =] [КОНСТАНТА = значение] [* ДИРЕКТИВА] [-h | --help]
ОПИСАНИЕ
Написанный на Expect, он предназначен для непосредственного отображения интерактивного сеанса терминала в
сценарий автоматизации. сценарии expect-lite используют знаки препинания в начале
каждая строка указывает действие. Базовые сценарии expect-lite могут быть созданы просто
вырезание и вставка текста из окна терминала в скрипт и добавление > < символы.
Знание Expect не требуется.
использование: expect-lite remote_host = cmd_file =
[user_dir = ] [const1 = значение1] [* НАПРАВЛЕНИЕ]
или короткая форма: expect-lite r = c = [d = ]
[const1 = значение1] [* НАПРАВЛЕНИЕ]
например. ./expect-lite r = host-008 c = pm_alt.elt d = / local / sw myvar = myvalue * NOCOLOR
дополнительные параметры входа: user_name = user_password =
например. ./expect-lite r = host-008 c = pm_alt.elt u = суперпользователь p = mysecret
дополнительные параметры отладки: -v|-вв|--подробный
-v печатает предупреждения и информацию (например, условные выражения, динамическое присвоение переменных)
-вв|--подробный
печатает предупреждения и отладку (т.е. ожидает информацию о совпадении)
например. ./expect-lite -vr = хост-008 c = pm_alt.elt
параметры помощи, определяемые пользователем: -h|--Помогите
отображает определяемый пользователем текст справки (обозначенный ;;;) и переменные, определенные в скрипте
которые можно переопределить константами в командной строке
КОМАНДА СИНТАКСИС
Это всего лишь краткий обзор ожидать-облегчить команды, чтобы служить напоминанием тем, кто
кто уже знает ожидать-облегчить; другая документация (например, HTML-документ) должна
обратитесь к более полному описанию.
Особый Персонажи
> дождитесь приглашения, затем отправьте строку на удаленный хост
>> отправить строку на удаленный хост, не дожидаясь приглашения
<строка / регулярное выражение ДОЛЖНО быть получено от удаленного хоста в течение отведенного тайм-аута или
скрипт НЕ ИСПОЛЬЗУЕТСЯ!
<< буквальная строка ДОЛЖНА быть получена (аналогично '<' без оценки регулярного выражения)
- <НЕ ожидайте, что если строка / регулярное выражение получено с удаленного хоста, сценарий завершится неудачно!
~ <нечеткое ожидание, ожидайте приблизительное число (десятичное или шестнадцатеричное)
# используется для обозначения строк комментариев и не действует
; также используются для обозначения строк комментариев, но выводятся на стандартный вывод (для ведения журнала)
; комментарий
добавить строки комментариев пользовательского цвета, цвет может быть синий, ltblue, серый, ltgray, голубой,
черный, розовый, фиолетовый, красный, зеленый, желтый
;; аналогично приведенному выше, но не печатаются лишние символы новой строки (полезно для печати скрипта
Помогите)
;;; отмечает начало и конец блока справочного текста. Текст справки - это справка, определяемая пользователем
для сценария и печатается, когда в командной строке указано -h или --help
@num изменяет время ожидания на количество секунд
: num засыпает num секунд. Также поддерживаются мили-секунды, например: 1.005 - 1005 мили-
секунды
$ var = статическое присвоение переменной при вызове скрипта. Имена переменных ограничены буквами,
числа и подчеркивание
+ $ var = присвоение динамической переменной
+ $ var увеличивает значение $ var на 1 десятичный знак
- $ var уменьшает значение $ var на 1 десятичный знак
= $ var математические функции, выполнение поразрядных и арифметических операций: << >> & | ^ * /% + -
(см. математические функции)
= $ str строковые математические функции, если $ str - строка, выполнять строковые операции:
// поиск / замена / + - (см. строковые математические функции в документации)
! указывает на встроенную строку ожидания
? c-стиль if / then / else в формате? cond? action :: else_action. кодовый блок также
поддерживается в операторах action и else_action. например
? если $ i <$ n? [
> отправить строку
<ожидаемая строка
] :: [
> отправить еще строку
<ожидаем еще строку
]
[В то время как цикл, используя блоки кода, например
[$ i <$ n
+ $ i
]
Цикл по каждому элементу, используя блоки кода, каждой итерации $ item назначается следующий элемент в
список. Список должен быть разделенными пробелами, например
$ thelist = ab cd ef
[$ item = $ thelist
> echo $ item
]
% label - используется для перехода к ярлыкам
~имя файла [константа = значение] [константа = значение с пробелами]
включает файл сценария expect-lite, полезный для создания общих файлов переменных,
или «подпрограммы / подпрограммы». Может передавать необязательные параметры, которые будут иметь приоритет (как
константы) переменные во включаемом файле. Переданные постоянные значения могут иметь
пробелы, кавычки не требуются
Директивы
*~имя файла
Включите сценарий сбоя, который expect-lite запускается только в случае сбоя основного сценария.
*/быстрый/
Установить пользовательскую подсказку (определенную в регулярном выражении)
*СРОК
Немедленно завершает скрипт и возвращает значение N, если N не указано
возвращает 0
* PASS Немедленно завершает скрипт и возвращает 0 (пройден)
* FAIL Немедленно завершает работу сценария и возвращает 1 (сбой), если не установлено * NOFAIL, тогда сценарий
будет работать до завершения и вернет 1
* NOFAIL
Скрипт будет выполнен до конца и вернет 1, если во время выполнения произошел сбой,
или 0, если пройден (это залипающий флаг и не может быть сброшен)
** ОБОЛОЧКА =
Директива конфигурации, которая устанавливает оболочку сразу после автоматического входа в
удаленный хост (см. настройку оболочки)
* ВЗАИМОДЕЙСТВИЕ
Точка останова, которая переводит пользователя в режим взаимодействия, приостанавливает скрипт и включает
управление клавиатурой перед пользователем
* NOINTERACT
После установки игнорирует все последующие точки останова (* ВЗАИМОДЕЙСТВИЕ). Это позволяет запускать
сценарий или сценарии в автоматической регрессии. Это не может быть сброшено (это
липкий флаг)
*ВИЛКА
Поддержка нескольких сеансов. Направляет expect-lite для открытия нового сеанса и порождает
новая оболочка
* ПОКАЗАТЬ ВАРЫ
Информация об отладке, отображает все переменные expect-lite. Может использоваться во взаимодействии
Режим.
* ПОКАЗАТЬ ENV
Отладочная информация, отображает среду expect-lite, включая состояние директив,
счетчик бесконечного цикла, имя файла журнала (если используется) и переменные среды. Возможно
используется в режиме взаимодействия.
* INFINITE_LOOP N
Значение защиты от бесконечного цикла, устанавливает N как новое значение
* EOLS LF | * EOLS CRLF
Управляет последовательностью конца строки, отправляемой на удаленный хост, либо переводом строки, либо кареткой
возврат + перевод строки.
* ДВПРОМПТ | * НОДВПРОМПТ
Включение / отключение метода захвата динамических переменных, чтобы требовалось завершающее приглашение
(по умолчанию = * DVPROMPT).
* NOINCLUDE
После установки игнорирует все последующие включаемые файлы (строки, начинающиеся с ~). Этот
было поведением по умолчанию в режиме библиотеки (введено в v4.1). Это поведение
больше не по умолчанию, и эта директива предоставляет метод предыдущему поведению.
Запись
Ведение журнала включает две операции: 1) запись вывода скрипта в файл, 2) управление
дополнительные сообщения, такие как info, exp_info и предупреждения. Все команды ведения журнала при использовании
на CLI переопределит те, что внутри скрипта
* ЖУРНАЛ | * НОЛОГ
Включение / отключение записи стандартных сообщений и сообщений в файл. Имя файла журнала
будет .log, сохраненный в каталоге сценария. (см. Переменная среды
EL_LOG_EXT ниже)
*БРЕВНО | * LOGAPPEND
Разрешить ведение журнала по указанному пользователем пути / имени_файла. При вызове из интерфейса командной строки
указанное имя_файла должно заканчиваться на ".log" (или как определено в EL_LOG_EXT), чтобы избежать
неоднозначность
* ИНФОРМАЦИЯ | * NOINFO
Включение / отключение информационных сообщений
* EXP_INFO | * NOEXP_INFO
Включение / отключение "ожидаемых" сообщений (для включения дополнительно используйте флаг -V)
* ПРЕДУПРЕЖДЕНИЕ | * СЕЙЧАС
Включение / отключение предупреждающих сообщений
* ОТЛАДКА | * NODEBUG
Включение / отключение отладочных сообщений
* NOCOLOR
Отключает цвет на стандартном выводе
* TIMESTAMP
Печатает дату и время с точностью до миллисекунды, для каждой отправленной команды ISO
дефолт. При использовании * LOG отметки времени будут записаны в файл журнала.
* NOTIMESTAMP
Отключает печать отметок времени
Окружающая среда Переменные
Больше нет необходимости вручную редактировать сам сценарий expect-lite. Все параметры такие
как connect_method, имя пользователя и пароль контролируются через переменные среды оболочки.
Это позволяет индивидуальную настройку в многопользовательской среде. Рекомендуется
сохраните эти значения в .expect-литерк и загрузите его из .bashrc или .cshrc. Если установлено,
будут использоваться следующие переменные среды:
EL_CONNECT_METHOD
Метод expect-lite используется для подключения к удаленному хосту. Допустимые варианты:
none | telnet | ssh | ssh_key По умолчанию none
EL_CONNECT_USER
Имя пользователя для входа на удаленный хост (telnet | ssh)
EL_CONNECT_PASS
Пароль для входа на удаленный хост (telnet | ssh)
EL_INFINITE_LOOP = N
Значение защиты от бесконечного цикла, устанавливает N равным пользовательскому значению по умолчанию
EL_DELAY_WAIT_FOR_HOST
Задержка (в мс) для ожидания хоста в режимах «Не ожидать» и «Динамический захват переменных». 100 мс - это
хорошее соотношение цены и качества для локальной сети, 200 мс при работе через высокоскоростной Интернет
EL_REMOTE_HOST
Имя или IP-адрес удаленного хоста
EL_CMD_FILE
Имя скрипта expect-lite для запуска
EL_USER_DIR
Перейдите в этот каталог при входе в систему перед выполнением скрипта
EL_SHELL
Запустите эту оболочку (по умолчанию bash) при использовании EL_CONNECT_METHOD = none
EL_DYN_VAR_PROMPT
Установите для метода захвата динамической переменной требование запроса (по умолчанию = 1). Отключить
установка на 0.
EL_LOG_EXT
Задайте строку расширения имени файла журнала (по умолчанию = ". Log"), которая добавляется к
имя скрипта при использовании * LOG без аргумента имени файла или при обнаружении файла журнала
имя в командной строке.
EL_ * Любые другие переменные среды оболочки, начинающиеся с EL_, станут константами.
Отладчик (IDE),
Отладчик выполняет три основные функции: 1) подключение пользователя к удаленному хосту.
или тестируемого устройства, 2) отслеживание специальных команд, которым предшествует клавиша выхода для
степпинга и других функций, и 3) отладчик позволит строкам сценария expect-lite
можно выполнить, набрав их напрямую или вставив в среду IDE.
Отладчик вызывается в точке останова путем помещения в сценарий команды * INTERACT или
с помощью мгновенного взаимодействия в любое время во время выполнения скрипта, нажав
ctrl + обратная косая черта ^ \
s Шаг, выполнить следующий шаг в скрипте
k sПерейти к следующему шагу в скрипте
c Продолжить выполнение скрипта
v показывать переменные, отображать ожидаемые переменные и значения
e показать среду, отобразить среду expect-lite
От 0 до 9
отобразить следующие N строк скрипта
-1к-9
отобразить последние N строк скрипта
ctrl + d Выйти и выйти из expect-lite
h отобразить справку
[вставленные строки]
выполнить любую вставленную строку (строки) из сценария в IDE
[введите любую строку expect-lite]
выполнить любую напечатанную строку сценария expect-lite
Используйте expect-lite онлайн с помощью сервисов onworks.net