To jest polecenie require-lite, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks przy użyciu jednej z naszych wielu bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online systemu Windows lub emulator online systemu MAC OS
PROGRAM:
IMIĘ
spodziewaj się-lite - szybkie i łatwe narzędzie do automatyzacji wiersza poleceń
STRESZCZENIE
oczekuj-lite [-w] -c [-r ] [STAŁA=wartość] [*DYREKTYWA] [-h|--pomoc]
or
skrypt.elt [-w] [r=] [STAŁA=wartość] [*DYREKTYWA] [-h|--pomoc]
OPIS
Napisany w programie Explore, ma za zadanie bezpośrednio mapować interaktywną sesję terminala na plik
skrypt automatyzacji. Skrypty oczekujące-lite używają znaków interpunkcyjnych na początku
każda linia wskazuje akcję. Podstawowe skrypty typu require-lite można utworzyć w prosty sposób
wycinanie i wklejanie tekstu z okna terminala do skryptu oraz dodawanie > < postacie.
Znajomość programu Hope nie jest wymagana.
użycie: oczekiwanie-lite zdalny_host= plik_cmd=
[katalog_użytkownika= ] [stała1=wartość1] [*DYREKTYWA]
lub krótka forma: oczekiwanie-lite r= c= [d= ]
[stała1=wartość1] [*DYREKTYWA]
np. ./expect-lite r=host-008 c=pm_alt.elt d=/local/sw myvar=mojawartość *NOCOLOR
dodatkowe opcje logowania: nazwa_użytkownika= hasło_użytkownika=
np. ./expect-lite r=host-008 c=pm_alt.elt u=superużytkownik p=mysecret
dodatkowe opcje debugowania: -v|-w|--gadatliwy
-v wyświetla ostrzeżenia i informacje (tj. warunki warunkowe, dynamiczne przypisania zmiennych)
-w|--gadatliwy
drukuje ostrzeżenia i debugowanie (tzn. spodziewaj się informacji o dopasowaniu)
np. ./expect-lite -vr=host-008 c=pm_alt.elt
opcje pomocy zdefiniowane przez użytkownika: -h|--help
wyświetla tekst pomocy zdefiniowany przez użytkownika (oddzielony znakami ;;;) i zmienne zdefiniowane w skrypcie
które można zastąpić stałymi w wierszu poleceń
COMMAND STRESZCZENIE
To tylko krótkie streszczenie oczekuj-lite polecenia, które mają im służyć jako przypomnienie
kto już wie oczekuj-lite; wymagana jest inna dokumentacja (taka jak dokument HTML).
należy zapoznać się z pełniejszymi opisami.
Specjalny Postacie
> poczekaj na monit, a następnie wyślij ciąg znaków do zdalnego hosta
>> wyślij ciąg znaków do zdalnego hosta, bez czekania na monit
< ciąg/regex MUSI zostać odebrany ze zdalnego hosta po upływie wyznaczonego limitu czasu lub
skrypt nie powiedzie się!
MUSI zostać odebrany ciąg literału << (podobnie jak „<” bez oceny wyrażenia regularnego)
-< NIE spodziewaj się, że jeśli od zdalnego hosta zostanie odebrany ciąg znaków/wyrażenie regularne, skrypt zakończy się niepowodzeniem!
~< rozmyte oczekiwanie, oczekiwanie przybliżonej liczby (dziesiętnej lub szesnastkowej)
# używany do wskazywania linii komentarza i nie ma żadnego efektu
; są również używane do wskazywania linii komentarzy, ale są wypisywane na standardowe wyjście (w celu rejestrowania)
; komentarz
dodaj niestandardowe linie komentarzy w kolorze, kolor może być niebieski, ltniebieski, szary, ltgray, cyjan,
czarny, różowy, fioletowy, czerwony, zielony, żółty
;; podobnie jak powyżej, ale nie są drukowane żadne dodatkowe znaki nowej linii (przydatne przy drukowaniu skryptu
pomoc)
;;; zaznacza początek i koniec bloku tekstu pomocy. Tekst pomocy to pomoc zdefiniowana przez użytkownika
dla skryptu i jest wypisywane, gdy w wierszu poleceń znajduje się opcja -h lub --help
@num zmienia oczekiwany limit czasu na liczbę sekund
:num śpi przez liczbę sekund. Obsługiwane są również milisekundy, np.: 1.005 to 1005 mili-
sekund
$var= przypisanie zmiennej statycznej przy wywołaniu skryptu. Nazwy zmiennych ograniczone do liter,
cyfry i podkreślenia
+$var= dynamiczne przypisanie zmiennej
+$var zwiększa wartość $var o 1 miejsce po przecinku
-$var zmniejsza wartość $var o 1 miejsce po przecinku
=$var funkcje matematyczne, wykonuj operacje bitowe i arytmetyczne: << >> & | ^ * /% + -
(zobacz funkcje matematyczne)
=$str funkcje matematyczne na łańcuchach, jeśli $str jest ciągiem, wykonaj operacje na ciągach:
//search/replace/ + - (zobacz funkcje matematyczne ciągów w dokumentacji)
! wskazuje osadzoną linię oczekiwań
? w stylu c if/then/else w formacie ?cond?action::else_action. blok kodu są również
obsługiwane w instrukcjach akcji i else_action. np
?jeśli $i < $n? [
> wyślij ciąg
<expect string
]::[
> wyślij inny ciąg
<expect else string
]
[ While Loop, używając bloków kodu, np
[ $i < $n
+$i
]
Foreach Loop, używając bloków kodu, do każdej iteracji $item przypisany jest następny element
Lista. Lista musi być oddzielone spacjami, np
$thelist=ab cd ef
[ $item=$thelista
>echa $przedmiot
]
Etykieta % - służy do przeskakiwania do etykiet
~filename [stała=wartość] [stała=wartość ze spacjami]
zawiera plik skryptowy require-lite, przydatny do tworzenia wspólnych plików zmiennych,
lub „podprogramy/podprogramy”. Może przekazywać opcjonalne parametry, które zastąpią (jak
stałe) zmienne w pliku dołączanym. Możliwe, że przekazano wartości stałe
spacje, cudzysłowy nie są wymagane
Dyrektywy
*~filename
Dołącz skrypt niepowodzenia, który będzie uruchamiany tylko w przypadku niepowodzenia głównego skryptu
*/podpowiedź/
Ustaw podpowiedź zdefiniowaną przez użytkownika (zdefiniowaną w wyrażeniu regularnym)
*TERMIN
Natychmiast kończy skrypt i zwraca wartość N, jeśli N nie zostało określone
zwraca 0
*PASS Natychmiast kończy skrypt i zwraca 0 (pass)
*FAIL Natychmiast kończy się niepowodzeniem skryptu i zwraca 1 (niepowodzenie), chyba że ustawiono *NOFAIL, wówczas skrypt
zakończy się i zwróci 1
*BEZ PORAŻKI
Skrypt zostanie uruchomiony do końca i zwróci 1, jeśli podczas wykonywania wystąpił błąd,
lub 0, jeśli pass (jest to flaga lepka i nie można jej usunąć)
**SHELLA=
Dyrektywa konfiguracyjna, która ustawia powłokę natychmiast po automatycznym zalogowaniu
zdalny host (zobacz ustawianie powłoki)
*ODDZIAŁYWAĆ
Punkt przerwania, który umieszcza użytkownika w trybie interakcji, wstrzymuje skrypt i odwraca się
kontrolę nad klawiaturą w ręce użytkownika
*BRAK INTERAKTU
Po ustawieniu zignoruje wszystkie kolejne punkty przerwania (*INTERACT). To pozwala na bieganie
skrypt lub skrypty w regresji nienadzorowanej. Nie można tego wyłączyć (jest to a
lepka flaga)
*WIDELEC
Obsługa wielu sesji. Nakazuje oczekiwaniu-lite otwarcie nowej sesji i powoduje pojawienie się pliku a
nowa skorupa
*POKAŻ WARIANTY
Informacje debugowania, wyświetla wszystkie zmienne oczekujące-lite. Można używać w interakcji
tryb.
*POKAŻ ENW
Informacje o debugowaniu, wyświetla środowisko oczekiwane-lite, w tym stan dyrektyw,
licznik nieskończonych pętli, nazwa pliku dziennika (jeśli jest używana) i zmienne środowiskowe. Może być
używany w trybie interakcji.
*INFINITE_LOOP N
Wartość zabezpieczenia pętli nieskończonej, ustawia N jako nową wartość
*EOLS LF|*EOLS CRLF
Kontroluje sekwencję końca wiersza wysyłaną do zdalnego hosta, przesunięcie wiersza lub karetkę
powrót + przejście do wiersza.
*DVPROMP|*NODVPROMPT
Włącz/wyłącz metodę przechwytywania zmiennej dynamicznej, aby wymagać końcowego monitu
(domyślnie=*DVPROMPT).
*NIEOBEJMUJE
Po ustawieniu zignoruje wszystkie kolejne pliki dołączane (linie zaczynające się od ~). Ten
było domyślnym zachowaniem w trybie Bibliotecznym (wprowadzonym w wersji 4.1). To zachowanie jest
nie jest już domyślny, a ta dyrektywa zapewnia metodę poprzedniego zachowania.
Logowanie
Rejestrowanie obejmuje dwie operacje: 1) zapisywanie wyników skryptu do pliku, 2) kontrolowanie
dodatkowe komunikaty, takie jak info, exp_info i ostrzeżenia. Wszystkie polecenia rejestrowania, jeśli są używane
w interfejsie CLI zastąpi te znajdujące się w skrypcie
*LOG|*NOLOG
Włącz/wyłącz rejestrowanie standardowych wyjść i komunikatów do pliku. Nazwa pliku dziennika
będzie .log zapisany w katalogu skryptów. (patrz Zmienna środowiskowa
EL_LOG_EXT poniżej)
*DZIENNIK |*LOGAPEND
Włącz rejestrowanie do określonej przez użytkownika ścieżki/nazwy_pliku. Po wywołaniu w interfejsie CLI, metoda
określona nazwa_pliku musi kończyć się na „.log” (lub zgodnie z definicją EL_LOG_EXT), aby tego uniknąć
Dwuznaczność
*INFO|*NIEINFO
Włącz/wyłącz wiadomości informacyjne
*EXP_INFO|*NOEXP_INFO
Włącz/wyłącz „oczekiwane” wiadomości (dodatkowo użyj flagi -V, aby włączyć)
*OSTRZEŻENIE|*NOWARN
Włącz/wyłącz komunikaty ostrzegawcze
*DEBUGOWANIE|*NODEBUGOWANIE
Włącz/wyłącz komunikaty debugowania
*BRAK KOLORU
Wyłącza kolor na stdout
*ZNAK CZASU
Drukuje datę i znacznik czasu z dokładnością do milisekundy, dla każdego wysłanego polecenia jest to wartość ISO
domyślny. W przypadku użycia *LOG znaczniki czasu zostaną zapisane w pliku dziennika.
*NOTIMESTAMP
Wyłącza drukowanie znacznika czasu
Środowisko Zmienne
Nie ma już potrzeby ręcznej edycji samego skryptu require-lite. Wszystkie parametry takie
jako metoda połączenia, nazwa użytkownika i hasło są kontrolowane za pomocą zmiennych środowiskowych powłoki.
Umożliwia to indywidualne dostosowanie w środowisku wielu użytkowników. Zaleca się
zapisz te wartości w .expect-literc i pobierz go z .bashrc lub .cshrc. Jeśli ustawione,
użyte zostaną następujące zmienne środowiskowe:
EL_CONNECT_METODA
Metoda, której używa oczekiwanie-lite do łączenia się ze zdalnym hostem. Prawidłowe opcje to:
none|telnet|ssh|ssh_key Wartość domyślna to brak
EL_CONNECT_USER
Nazwa użytkownika używana do logowania na zdalnym hoście (telnet|ssh)
EL_CONNECT_PASS
Hasło do logowania na zdalnym hoście (telnet|ssh)
EL_INFINITE_LOOP=N
Wartość zabezpieczenia przed nieskończoną pętlą, ustawia N na wartość domyślną użytkownika
EL_DELAY_WAIT_FOR_HOST
Opóźnienie (w ms) oczekiwania na hosta w trybie Nieoczekiwane i Dynamiczne przechwytywanie zmiennych. 100 ms to a
dobra wartość dla lokalnej sieci LAN, 200 ms w przypadku korzystania z szybkiego Internetu
EL_REMOTE_HOST
Nazwa lub adres IP zdalnego hosta
EL_CMD_FILE
Nazwa skryptu oczekującego na uruchomienie
EL_USER_DIR
Przejdź do tego katalogu po zalogowaniu przed wykonaniem skryptu
EL_SHELL
Uruchom tę powłokę (domyślny bash), jeśli używasz EL_CONNECT_METHOD=none
EL_DYN_VAR_PROMPT
Ustaw metodę przechwytywania zmiennej dynamicznej tak, aby wymagała monitu (domyślnie=1). Wyłącz przez
ustawienie na 0.
EL_LOG_EXT
Ustaw ciąg rozszerzenia nazwy pliku dziennika (default=".log"), który jest dołączany do
nazwa skryptu w przypadku używania *LOG bez argumentu nazwy pliku lub używanego do wykrywania pliku dziennika
nazwę w wierszu poleceń.
EL_* Wszelkie inne zmienne środowiskowe powłoki zaczynające się od EL_ staną się stałymi
Debugger (SDI)
Debugger spełnia trzy podstawowe funkcje: 1) łączy użytkownika ze zdalnym hostem
lub testowanego urządzenia, 2) monitorowanie specjalnych poleceń poprzedzonych klawiszem Escape
stepping i inne funkcje oraz 3) debuger pozwoli na użycie linii skryptu oczekującego-lite
można wykonać, wpisując je bezpośrednio lub wklejając je do IDE.
Debuger jest wywoływany w punkcie przerwania poprzez umieszczenie w skrypcie komendy *INTERACT lub
użycie przez natychmiastową interakcję w dowolnym momencie wykonywania skryptu, naciskając
Ctrl+ukośnik odwrotny ^
s Step, wykonaj następny krok w skrypcie
k Pomiń następny krok w skrypcie
c Kontynuuj wykonywanie skryptu
v pokaż Vars, wyświetl zmienne i wartości oczekiwane-lite
e pokaż środowisko, wyświetl środowisko oczekujące-lite
0 do 9
wyświetl następne N linii skryptu
-1 do -9
wyświetl N ostatnich linii skryptu
ctrl+d Wyjdź i wyjdź z oczekiwanego-lite
h wyświetl Pomoc
[wklejone linie]
wykonaj dowolne wklejone linie ze skryptu do IDE
[wpisz dowolną linię oczekującą-lite]
wykonaj dowolną wpisaną linię skryptu oczekującego-lite
Korzystaj z usługi require-lite online, korzystając z usług onworks.net