I'm trying to instruct my Python installation to execute an Expect script "myexpect.sh":
#!/usr/bin/expect
spawn ssh usr@myip
expect "password:"
send "mypassword\n";
send "./mycommand1\r"
send "./mycommand2\r"
interact
I'm on Windows so re-writing the lines in the Expect script into Python are not an option. Any suggestions? Is there anything that can run it the way "./myexpect.sh" does from a bash shell?
I have had some success with the subprocess command:
subprocess.call("myexpect.sh", shell=True)
I receive the error:
myexpect.sh is not a valid Win32 application.
How do I get around this?
subprocess.call(r"c:\path\to\cygwin\expect.exe", "myexpect.sh"])
. Your specific script could be implemented usingfabric
– Jacquetta