$ cat config.exp
#!/usr/bin/expect
set timeout 30
set host [lindex $argv 0]
set password [lindex $argv 1]
set done 0
log_file $host.log
spawn telnet $host
expect "Password:"
send "$password\r"
expect "*>"
send "enable\r"
expect "Password: "
send "$password\r"
expect "*#"
send "show running-config\r"
while {$done == 0} {
expect {
" --More--" { send -- " " }
"*#" { set done 1 }
eof { set done 1 }
}
}
send "\r"
expect "*#"
send "exit\r"
expect eof
exit
$ cat loop.sh
#! /bin/sh
while read sw
do
./config.exp $sw
done <<EOF
172.10.0.20 chen
172.10.0.21 chen
172.10.0.22 chen
172.10.0.23 chen
172.10.0.25 chen
172.10.0.26 chen
EOF
$ chmod +x config.exp loop.sh
$ ./loop.sh