Ich versuche zu laufen erwarten, dass mein Python zu instruieren Skript „myexpect.sh“ auszuführen erwarten:einfachste Weg Skript von Python
#!/usr/bin/expect
spawn ssh [email protected]
expect "password:"
send "mypassword\n";
send "./mycommand1\r"
send "./mycommand2\r"
interact
Ich bin auf dem Fenster, so dass wieder das Schreiben die Zeilen in der erwartet Skript in Python sind keine Option. Irgendwelche Vorschläge? Gibt es etwas, das es so ausführen kann "./myexpect.sh" tut es aus einer Bash-Shell? Danke für jede Hilfe.
edit: Ich habe einige Erfolge mit dem Befehl subprocess hatte
subprocess.call("myexpect.sh", shell=True)
erhalte ich die Fehlermeldung: 'myexpect.sh ist keine gültige Win32-Anwendung' Irgendwelche Vorschläge, wie man das umgehen kann?
... fragen Sie, wie ohne bash ein Bash-Skript unter Windows laufen zu lassen? Ich sehe nicht einmal, wo Python hier reinkommt. Außerdem sollten Sie Ihren Shell-Skripten wahrscheinlich .txt-Erweiterungen geben (.sh, wenn überhaupt) –
@MateuszKowalczyk in gewissem Sinne ja: Ich möchte dieses Skript automatisch aus einer .py-Datei ausführen - wenn ich die .py-Datei ausführe, Das Expect-Skript wird aufgerufen und als Teil der Sequenz der .py-Datei ausgeführt. – gortron
Es sieht also so aus, als ob Sie überhaupt keine Python-bezogene Lösung suchen (abgesehen von der Tatsache, dass es von Python aus gesteuert wird). Sie wollen einfach ein Programm unter Windows, das das expect-Skript lesen und ausführen kann, oder? –