我是Expect脚本的新手。
我编写了一个用于在Linux机器上进行ssh的Expect脚本,但在尝试ssh到不同的Linux机器时遇到了问题。下面是我复制的脚本。
!/usr/local/bin/expect
set LinuxMachine [lindex $argv 0]
spawn ssh root@$LinuxMachine
expect "root@$LinuxMachine's password:"
send "root123\n"
expect "[root@Client_FC12_172_85 ~]#"
send "ls"
interact
当我在命令行中提供 10.213.172.85
时,第4行中的 expect
读作 "root@10.213.172.85's password:
" ,并登录成功。
但是有些 Linux 系统会期望其他形式。
The authenticity of host '10.213.172.108 (10.213.172.108)' can't be established.
RSA key fingerprint is da:d0:a0:e1:d8:7a:23:8b:c7:d8:40:8c:b2:b2:9b:95.
Are you sure you want to continue connecting (yes/no)
在这种情况下,脚本将无法运行。
如何在一个Expect命令中有两个Expect语句?