我们还可以传递参数 $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执行的命令,需要用""括起来,表示一个整体。