In this expect script there will be no ssh server connected, I just want to execute a ".sh" file locally, is that possible?
For instance:
#!/bin/expect
command "xxx.sh" # a command which starts a certain shell script
Also, is it possible to execute a expect script within a expect script?
For instance:
#!/bin/expect
command "xxx.exp" # a command which starts a certain expect script
Any help?
The command in Expect to run a shell command is
spawn
.command
can be any program -- a binary executable, a shell script, another expect script, etc. So you can do:or:
If you need to interact with this script, use
spawn xxx.sh
If you just need to run it and capture the output, use
set output [exec xxx.sh]
Expect is an extension of the Tcl language, so you would be well served to go through the Tcl tutorial.