我们还可以传递参数 $argv 0是第一个参数,以此类推
#!/usr/bin/expect
set user [lindex $argv 0] 参数的固定写法,第一个参数。
set host [lindex $argv 1]
set passwd "123456" 密码也可以引用变量
set cm [lindex $argv 2] cm是执行的命令
spawn ssh $user@$host
expect {
"yes/no" { send "yes\r"}
"password:" { send "$passwd\r" }
}
expect "]*"
send "$cm\r"
expect "]*"
send "exit\r"
执行脚本 expecet 3.expect root 192.168.11.102 "ls /tmp/12.txt"
cm执行的命令,需要用""括起来,表示一个整体。
原文地址:http://llzdwyp.blog.51cto.com/6140981/1748929