Revision [4163]

Last edited on 2011-10-11 03:16:47 by KenFong
Additions:
===Enter interact mode on error===
#!/usr/bin/expect -f
set timeout 30
set log [open oper-restart.log a+]
set server [lindex $argv 0]
set login [lindex $argv 1]
set pass [lindex $argv 2]
set cmd [lindex $argv 3]
set validate [lindex $argv 4]
puts $log "Executing: $server $login $pass $cmd"
# Log in to remote system
spawn ssh $login@$server
expect {
"password:*" { }
"(yes/no)? " {
send -- "yes\r"
expect "password:*"
}
}
send -- "$pass\r"
expect "*]$*"
puts $log "Execute: $cmd"
send -- "$cmd\r"
expect {
"${validate}" {
send_user "TASK SUCCESSFULi."
set outcome $expect_out(buffer)
puts $log $outcome
sleep 5
send -- "logout\r"
puts $log "logged out"
expect eof
}
"failed" {
send_user "!!! TASK FAILED !!! \n"
send_user "$server $cmd\n\n"
send_user "Please manually ran this task\n"
send_user "Expect script will drop in interact mode now\n"
send_user "When finished, logout and automation will resume\n\n\n"
interact -o eof return
}
}


Revision [1129]

The oldest known version of this page was created on 2007-11-06 02:58:23 by WikiAdmin
Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki