Ho bisogno di automatizzare la registrazione in una sessione TELNET utilizzando aspettarsi, ma devo occuparmi di più password per lo stesso nome utente.Utilizzo di istruzioni condizionali all'interno di 'expect'
Ecco il flusso ho bisogno di creare:
- Aperto sessione Telnet a un IP
- Invia nome utente
- Invia password
- Password errata? Invia lo stesso nome utente di nuovo, quindi una password diversa
- necessario accedere-in con successo a questo punto ...
Per quello che vale, ecco quello che ho finora:
#!/usr/bin/expect
spawn telnet 192.168.40.100
expect "login:"
send "spongebob\r"
expect "password:"
send "squarepants\r"
expect "login incorrect" {
expect "login:"
send "spongebob\r"
expect "password:"
send "rhombuspants\r"
}
expect "prompt\>" {
send_user "success!\r"
}
send "blah...blah...blah\r"
Inutile dire che questo non funziona, e non sembra molto bello. Dalle mie avventure con Google aspettarsi sembra essere qualcosa di un'arte oscura. Grazie in anticipo a chiunque per l'assistenza in materia!
Ho aggiunto più informazioni alla mia risposta. – tvanfosson