Necesito automatizar el registro en una sesión de TELNET usando espero, pero tengo que ocuparme de múltiples contraseñas para el mismo nombre de usuario.Uso de instrucciones condicionales dentro de 'esperar'
Aquí está el flujo Necesito crear:
- sesión TELNET abierto a una IP
- Enviar nombre de usuario
- Enviar contraseña
- contraseña incorrecta? Enviar el mismo nombre de usuario nuevo, entonces una contraseña diferente
- Debería haber iniciado la sesión en el éxito en este punto ...
Por lo que vale la pena, esto es lo que tengo hasta ahora:
#!/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"
No hace falta decir que esto no funciona, y tampoco se ve muy bonito. De mis aventuras con Google espera parece ser algo así como un arte oscuro. Gracias de antemano a cualquier persona por su ayuda en el asunto!
He agregado más información a mi respuesta. – tvanfosson