Pergunta

Estou executando um aplicativo, que solicitará uma senha do usuário sobre uma dúzia de vezes :-( Eu tentei usar esperar para contornar este problema, e fazê-lo funcionar no modo automático, mas sou incapaz de superar o problema da senha várias vezes, que não é exatamente estática. Às vezes ele pede 4-5 vezes e por volta de 9-10 vezes.

Existe uma melhor solução para o problema do que aquilo que tenho dado abaixo:

spawn myApp [lindex $argv 0]
expect " password: $"
send "$password\r"
expect {
  " password: $"    send "$password\r"
  "^Rollout Done "
  "^Rollout Updated "
}

Com a solução acima, eu só foi capaz de pegar a senha duas vezes e, em seguida, iniciar manualmente entrar para o resto do tempo, existe um loop possível com a senha?

Outras dicas

Esperar pode usar laços - é apenas TCL com alguns comandos adicionados eu acredito. Então, basta fazer

set found 0
while {$found < 1}
{
expect {
 " password: $"    send "$password\r"
 "^Rollout Done "  set found 1
 "^Rollout Updated " set found 1
}
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top