scrivo quanto segue si aspettano di script per automatizzare login ssh alla macchina Linux remota ed eseguire il comando "file di /etc/APP_VERSION.txt cat"aspettano lo script + come ignorare le stringhe se non appare
A volte mi non ho chiesto di comando ssh su-
"Are you sure you want to continue connecting (yes/no)?"
Quindi, in questo caso il primo si aspettano ancora attendere per la stringa "(sì/no)?" - :(
E non continuare con il secondo si aspettano - "password:"
come risolvere questo,
Voglio dire, se la linea "Sei sicuro di voler continuare la connessione (sì? ?/no) " Is not compare da ssh
Poi si deve andare alla prossima aspettarsi 'password:', ma come fare questo
Remark1 - nella questione caso" Sei certo vuoi continuare a connetterti (sì/no)? ", appare allora il aspetto che lo script funzioni bene senza problemi .
Remark2 - Non posso usare timeout valore positivo (come timeout 10), perché ssh in se ha ritardo
. . . .
la mia aspettano script: (questo si aspettano fa parte del mio script ksh)
.
.
.
APP_MACHINE=172.12.6.190
set timeout -1
spawn ssh $APP_MACHINE
expect {
"(Are you sure you want to continue connecting yes/no)?"
{ send "yes\r" }
}
expect password: {send PASS123\r}
expect > {send "cat /etc/APP_VERSION.txt\r"}
expect > {send exit\r}
expect eof
.
.
.
. . . . .
esempio di ssh dalla mia macchina Linux
ssh APP_MACHINE
The authenticity of host 'APP_MACHINE (172.12.6.190)' can't be established.
RSA key fingerprint is 1e:8a:3d:b3:e2:8c:f6:d6:1b:16:65:64:23:95:19:7b.
Are you sure you want to continue connecting (yes/no)?
Mi spiace non posso usarlo perché un po 'di tempo ssh ha esso stesso avere la connessione di tempo - a volte il suo 5 o 10 secondi chi lo sa? - La sua non è una buona soluzione per me, mi dispiace ancora, deve essere un'altra soluzione !!! –
Comunque questa non è una buona idea perché la mia APP ha bisogno di correre velocemente senza alcun ritardo dallo script previsto –
Aggiungo la stringa exp_continue come viene visualizzata qui ma è ancora bloccata. –