Archive for October 5th, 2011
expect example
#!/usr/bin/expect -f
set timeout 60
set env(TERM)
spawn orafed orafed
expect “assw”
send “123456\r”
expect “orafed”
send “sqlplus / as sysdba\r”
expect “SQL>”
send “startup;\r”
expect “SQL>”
send “exit\r”
expect “orafed”
send “lsnrctl start\r”
expect “command completed”
send “exit\r”
——————-
#!/usr/bin/expect -f
set timeout 60
set env(TERM)
set vuser [lindex $argv 0]
set vhost [lindex $argv 1]
spawn ssh $vuser@$vhost
expect {
“*assword” { send “thispass\r” }
timeout { exit 2 }
}
expect {
“thisTerm” { send “ssh nextuser@nextterm\r”
exp_continue }
“*assword: ” {
stty -echo
send_user “ask pass: ”
expect_user -re “(.*)\n”
send_user “\n”
send “$expect_out(1,string)\r”
stty echo
exp_continue
}
“nextTerm” { send “w\r” }
}
interact {
“done” { send_user “send ls -la\r”; send “ls -la\r”; return
}
}
expect {
“nextTerm” { send “exit\r”; exp_continue }
“thisTerm” { send — “exit\r” }
timeout {exit 3}
}