Ich habe eine Maschine, die ich telnet, und passiere "Strg + C", bis ich die Eingabeaufforderung sehe. Die Strg + C funktioniert möglicherweise nicht immer, also muss ich alle 5 Sekunden versuchen, bis ich meine erwartete Ausgabe ($ prompt) sehe.Wie implementieren "Fallback-Bedingung" in While-Schleife in Expect?
Falls ich keine $ Eingabeaufforderung bekomme, wie kann ich sicherstellen, dass ich die While-Schleife erneut versuchen kann? Liegt dieser Code unter der Best Practice? Meine Sorge ist, dass ich nicht weiß, was ich bekomme, wenn die "Strg + C" fehlschlägt, es könnte alles sein und es muss ignoriert werden, es sei denn es ist $ prompt.
while { $disableFlag == 0 } {
send "^C\r"
expect {
"*$prompt*" {
puts "Found the prompt"
sleep 5
}
"*" {
set disableFlag 1
puts "Retrying"
sleep 5
}
}
}