WLC Config Backup

#!/usr/bin/expect
 
set router [ lindex $argv 0]
set username [ lindex $argv 1]
set password [ lindex $argv 2]
 
spawn ssh $router
 
#log_user 0
set timeout 10
 
expect "(yes/no)?" {
send "yes\r"; exp_continue }
 
expect "User:"
send -- "$username\r"
 
expect "assword:"
send -- "$password\r"
 
expect "Controller"
send -- "transfer upload datatype config\r"
expect "Controller"
send -- "transfer upload mode tftp\r"
expect "Controller"
send -- "transfer upload serverip <your tftp or ftp server ip>\r"
expect "Controller"
send -- "transfer upload start\r"
# some wlc config commands require yes/no verification
expect "(y/N)"
send -- "y\r"
expect "Controller"
send "logout\r"
expect "(y/N)"
send -- "n\r"
 
expect eof