Comment faire pour retourner a engendré de sortie du processus code dans le script expect?
J'utilise attendre pour l'exécution des scripts de test.
Les Tests de rendement de succès/échec à l'aide de code de sortie. Mais s'attendre à rendement équivalent code de sortie.
Comment faire attendre le retour de sortie appropriée statut?
Mes tests sont des scripts sql à exécuter avec psql (postgresql processeur de commande).
Depuis psql ne permet pas de spécifier la base de données de mot de passe comme un paramètre de ligne de commande, s'attendre à des scripts le faire.
Donc, mon script expect ressemble:
spawn $SPAWN_CMD
expect {
-re "Enter password for new role:" {
send "$PWPROMPT\n"
exp_continue
} -re "Enter it again:" {
send "$PWPROMPT\n"
exp_continue
} -re "Password(.*)" {
send "$PASSWORD\n"
exp_continue
} -re "Password(.*):" {
send "$PASSWORD\n"
exp_continue
} eof
}
Vous devez vous connecter pour publier un commentaire.
Vous êtes déjà en attente pour le
eof
à la fin de votre boucle, vous avez juste besoin d'utiliserwait
etcatch
le résultat:Sorties à 0.
Sorties avec 1.
[21:43:30] ~> expect <<< "spawn true; expect eof; catch wait result; exit [lindex $result 3]"; echo $?
sorties3
pour moi