Questo è il comando Expect-lite che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS
PROGRAMMA:
NOME
Expect-lite - uno strumento di automazione della riga di comando facile e veloce
SINOSSI
aspettatevi-lite [-vv] -c [-r ] [COSTANTE=valore] [*DIRETTIVA] [-h|--aiuto]
or
script.elt [-vv] [r=] [COSTANTE=valore] [*DIRETTIVA] [-h|--aiuto]
DESCRIZIONE
Scritto in Expect, è progettato per mappare direttamente una sessione di terminale interattivo in un
script di automazione. gli script Expect-lite usano i caratteri di punteggiatura all'inizio di
ogni riga per indicare l'azione. Gli script di base Expect-lite possono essere creati semplicemente
tagliare e incollare il testo da una finestra di terminale in uno script e aggiungere > < caratteri.
La conoscenza di Expect non è richiesta.
utilizzo: Expect-lite remote_host= cmd_file=
[user_dir= ] [const1=valore1] [*DIRETTIVA]
o forma breve: Expect-lite r= c= [d= ]
[const1=valore1] [*DIRETTIVA]
per esempio. ./expect-lite r=host-008 c=pm_alt.elt d=/local/sw myvar=myvalue *NOCOLOR
opzioni di accesso aggiuntive: user_name= user_password=
per esempio. ./expect-lite r=host-008 c=pm_alt.elt u=superutente p=mysecret
opzioni di debug aggiuntive: -v|-vv|--verboso
-v stampa avvisi e informazioni (ad es. condizionali, assegnazioni di variabili dinamiche)
-vv|--verboso
stampa avvisi ed esegue il debug (ad es. si aspettano informazioni sulla corrispondenza)
per esempio. ./expect-lite -vr=host-008 c=pm_alt.elt
opzioni di aiuto definite dall'utente: -h|--Aiuto
visualizza il testo della guida definito dall'utente (demarcato da ;;;) e le variabili definite nello script
che può essere sovrascritto dalle costanti sulla riga di comando
COMANDO SINOSSI
Questa è solo una breve sinossi di aspettatevi-lite comandi per ricordare a quelli
chi già lo sa aspettatevi-lite; altra documentazione (come il documento html) deve
essere consultato per descrizioni più complete.
Special Personaggi
> attendi un prompt, quindi invia la stringa all'host remoto
>> invia la stringa all'host remoto, senza attendere il prompt
< la stringa/regex DEVE essere ricevuta dall'host remoto nel timeout assegnato o nel
lo script FALLIRÀ!
<< la stringa letterale DEVE essere ricevuta (simile a '<' senza valutazione regex)
-< NON aspettarsi, se la stringa/regex è ricevuta dall'host remoto lo script FALLIRÀ!
~< aspettati fuzzy, aspettati un numero approssimativo (decimale o esadecimale)
# usato per indicare le righe di commento e non ha alcun effetto
; sono anche usati per indicare le righe di commento, ma sono stampati su stdout (per la registrazione)
; commento
aggiungi righe di commento colore personalizzate, il colore può essere blu, ltblue, grigio, ltgray, ciano,
nero, rosa, viola, rosso, verde, giallo
;; simile a sopra, ma non vengono stampate nuove righe (utile per stampare script
aiuto)
;;; segna l'inizio e la fine di un blocco di testo di aiuto. Il testo della guida è una guida definita dall'utente
per uno script e viene stampato quando -h o --help è sulla riga di comando
@num cambia il timeout atteso in num di secondi
:num dorme per num secondi. Anche i millisecondi sono supportati, ad es. :1.005 è 1005 millisecondi
secondo
$var= assegnazione della variabile statica al richiamo dello script. Nomi di variabili limitati a lettere,
numeri e sottolineatura
+$var= assegnazione di variabili dinamiche
+$var incrementa il valore di $var di 1 decimale
-$var decrementa il valore di $var di 1 decimale
=$var funzioni matematiche, esegue operazioni bit per bit e operazioni aritmetiche: << >> & | ^ * / % + -
(vedi funzioni matematiche)
=$str funzioni matematiche sulle stringhe, se $str è una stringa, eseguono operazioni sulle stringhe:
//cerca/sostituisci/ + - (vedi le funzioni matematiche per le stringhe nella documentazione)
! indica una linea di attesa incorporata
? c-style if/then/else nel formato ?cond?action::else_action. blocco di codice sono anche
supportato nelle istruzioni action e else_action. per esempio
?se $i < $n ? [
>invia stringa
<previsto stringa
]::[
> invia un'altra stringa
<si aspetta un'altra stringa
]
[ While Loop, utilizzando blocchi di codice, ad es
[ $i < $n
+$io
]
Foreach Loop, usando i blocchi di codice, a ogni iterazione $item viene assegnato l'elemento successivo in
la lista. Elenco devono obbligatoriamente: essere delimitato da spazi, ad es
$lista=ab cd ef
[ $elemento=$l'elenco
>echo $elemento
]
% etichetta - usata per saltare alle etichette
~Nome del file [costante=valore] [costante=valore con spazi]
include un file di script Expect-lite, utile per la creazione di file variabili comuni,
o 'sottoprogrammi/subroutine'. Può passare parametri opzionali che sovrascriveranno (come
costanti) le variabili nel file di inclusione. I valori costanti passati possono avere
spazi, non sono necessarie virgolette
direttive
*~Nome del file
Includi uno script di errore, che Expect-lite viene eseguito solo se lo script principale fallisce
*/richiesta/
Imposta un prompt definito dall'utente (definito in regex)
*TERMINE
Termina immediatamente lo script e restituisce il valore di N, se N non è specificato
restituisce 0
*PASS Termina immediatamente lo script e restituisce 0 (pass)
*FAIL Fallisce immediatamente lo script e restituisce 1 (fail), a meno che non sia impostato *NOFAIL, quindi script
verrà eseguito fino al completamento e restituirà 1
*NO FALLITO
Lo script verrà eseguito fino al completamento e restituisce 1, se si è verificato un errore durante l'esecuzione,
o 0, se superato (è un flag permanente e non può essere annullato)
**GUSCIO=
Direttiva di configurazione che imposta la shell immediatamente dopo il login automatico su
host remoto (vedi impostazione della shell)
*INTERAGIRE
Un punto di interruzione che mette l'utente in modalità di interazione, mette in pausa lo script e gira
controllo della tastiera all'utente
*NESSUNA INTERAZIONE
Una volta impostato, ignorerà tutti i breakpoint successivi (*INTERACT). Questo permette di correre
uno o più script in una regressione non presidiata. Questo non può essere disinserito (è un
bandiera adesiva)
*FORCHETTA
Supporto per più sessioni. Dirige a Expect-lite per aprire una nuova sessione e genera a
nuovo guscio
*MOSTRA VARS
Informazioni di debug, visualizza tutte le variabili Expect-lite. Può essere utilizzato in interact
modalità.
*MOSTRA ENV
Informazioni di debug, visualizza l'ambiente Expect-lite, incluso lo stato delle direttive,
contatore di loop infinito, nome del file di registro (se utilizzato) e variabili di ambiente. Può essere
utilizzato in modalità di interazione.
*CICLO_INFINITO N
Valore di protezione loop infinito, imposta N come nuovo valore
*EOLSLF|*EOLSCRLF
Controlla la sequenza di fine riga inviata all'host remoto, sia l'avanzamento della riga che il carrello
ritorno + avanzamento riga.
*DVPROMPT|*NODVPPROPT
Abilita/disabilita il metodo di acquisizione della variabile dinamica per richiedere un prompt finale
(predefinito=*DVPROMPT).
*NON INCLUDERE
Una volta impostato, ignorerà tutti i file include successivi (righe che iniziano con ~). Questo
era il comportamento predefinito in modalità Libreria (introdotto nella v4.1). Questo comportamento è
non è più predefinito e questa direttiva fornisce un metodo al comportamento precedente.
Registrazione
La registrazione comprende due operazioni: 1) scrivere l'output dello script in un file, 2) controllare
messaggi aggiuntivi, come info, exp_info e warning. Tutti i comandi di registrazione quando utilizzati
sulla CLI sovrascriverà quelli all'interno dello script
*LOG|*NOLOG
Abilita/disabilita la registrazione dell'uscita standard e dei messaggi in un file. Il nome del file di registro
sarà .log salvato nella directory dello script. (vedi Variabile d'ambiente
EL_LOG_EXT sotto)
*TRONCO D'ALBERO |*LOGAPPEND
Abilita la registrazione su un percorso/nome_file specificato dall'utente. Quando viene invocato sulla CLI, il
nome_file specificato deve terminare con ".log" (o come definito da EL_LOG_EXT) per evitare
ambiguità
*INFO|*NOINFO
Abilita/disabilita i messaggi informativi
*INFO_EXP|*INFO_NOEXP
Abilita/disabilita i messaggi "previsti" (usa inoltre il flag -V per abilitare)
*AVVISO|*NON AVVISO
Abilita/disabilita i messaggi di avviso
*DEBUG|*NODEBUG
Abilita/disabilita i messaggi di debug
*NOCOLORE
Disabilita il colore su stdout
*TIMESTAMP
Stampa data e timestamp con precisione al millisecondo, per ogni comando inviato, ISO è
predefinito. I timestamp verranno scritti nel file di log quando viene utilizzato *LOG.
*NOTA ORA
Disabilita la stampa del timestamp
Ambiente Variabili
Non è più necessario modificare manualmente lo script Expect-lite stesso. Tutti i parametri come
come connect_method, il nome di login e la password sono controllati tramite le variabili di ambiente della shell.
Ciò consente la personalizzazione individuale in un ambiente multiutente. Si consiglia di
salva questi valori in .expect-literc e estrailo da .bashrc o .cshrc. Se impostato, il
verranno utilizzate le seguenti variabili di ambiente:
EL_CONNECT_METHOD
Il metodo utilizzato da Expect-lite per connettersi all'host remoto. Le opzioni valide sono:
none|telnet|ssh|ssh_key Il valore predefinito è nessuno
EL_CONNECT_USER
Nome utente da utilizzare per l'accesso su host remoto (telnet|ssh)
EL_CONNECT_PASS
Password da utilizzare per il login su host remoto (telnet|ssh)
EL_INFINITE_LOOP=N
Valore di protezione loop infinito, imposta N sul valore predefinito dell'utente
EL_DELAY_WAIT_FOR_HOST
Ritardo (in ms) per l'attesa dell'host in Not Expect e Dynamic Var Capture. 100 ms sono un
buon valore per una LAN locale, 200 ms se in esecuzione su Internet ad alta velocità
EL_REMOTE_HOST
Nome o IP dell'host remoto
EL_CMD_FILE
Nome dello script Expect-lite da eseguire
EL_USER_DIR
Passare a questa directory all'accesso prima di eseguire lo script
EL_SHELL
Avvia questa shell (bash predefinita) quando usi EL_CONNECT_METHOD=none
EL_DYN_VAR_PROMPT
Impostare il metodo di acquisizione della variabile dinamica per richiedere un prompt (predefinito=1). Disattiva per
impostazione a 0.
EL_LOG_EXT
Imposta la stringa dell'estensione del nome del file di registro (default=".log") che viene aggiunta al file
nome dello script quando si utilizza *LOG senza argomento del nome del file o utilizzato per rilevare un file di registro
nome sulla riga di comando.
EL_* Tutte le altre variabili di ambiente della shell che iniziano con EL_ diventeranno costanti
Debugger (SDI)
Il debugger svolge tre funzioni principali: 1) connettere l'utente all'host remoto
o dispositivo in prova, 2) monitoraggio di comandi speciali preceduti dal tasto Esc per
stepping e altre funzioni, e 3) il debugger consentirà alle righe di script Expect-lite di
essere eseguiti digitandoli direttamente o incollandoli nell'IDE.
Il debugger viene richiamato in un punto di interruzione inserendo il comando *INTERACT nello script, oppure
utilizzando l'interazione istantanea in qualsiasi momento durante l'esecuzione dello script premendo
ctrl+barra rovesciata ^\
s Step, esegui il passaggio successivo nello script
k Salta il passaggio successivo nello script
c Continuare l'esecuzione dello script
v mostra Vars, visualizza variabili e valori aspettati-lite
e mostra l'ambiente, mostra l'ambiente aspettato-lite
0to9
mostra le prossime N righe di script
-1a-9
mostra le ultime N righe di script
ctrl+d Esci ed esci aspetta-lite
h display Aiuto
[riga/e incollata/e]
eseguire qualsiasi riga incollata da uno script nell'IDE
[digita qualsiasi riga aspettativa]
eseguire qualsiasi riga di script Expect-lite digitata
Usa Expect-lite online utilizzando i servizi onworks.net