Description: |
Distribution: ActiveState 8.5.4
OS: Windows XP Professional 2002 SP2
Expect version: 5.43
Attempting to automate SSH seesion using plink.exe
Installed Tcl 8.4.16 and ran the script below. Everything worked as expected
Saved copy of Expect folder
Uninstalled Tcl 8.4.16
Installed Tcl 8.5.4
Copied older Expect folder to Tcl lib folder
Ran script and got the attached error
Script:
#!/bin/sh
# The next line is executed by /bin/sh, but not tcl \
exec wish "$0" ${1+"$@"}
package require Expect
wm withdraw .
console show
set currDir [pwd]
set outputFile "$currDir/SSH_log_Out.txt"
set remoteIP "172.20.172.40"
set userID admin
set userPW admin
set timeout 20
after 50 {set newMsg 1}
vwait newMsg
set prompt {CPE40:}
log_file $outputFile
# Open a SSH connection
spawn plink $remoteIP
after 2000
expect {
-nocase -re "(login as:)"{ exp_send "$userID\r";}
}
after 1000
expect {
-nocase -re "(password:)" { exp_send "$userPW\r" }
}
after 1000
expect {
-nocase -re "($prompt)" { exp_send "interface show bridgemgmt\r" }
}
after 1000
expect {
-nocase -re "($prompt)" { exp_send "snmp show\r" }
}
after 1000
expect {
-nocase -re "($prompt)" { exp_send "exit\r" }
}
log_file
after 5000
exit
|