这是个写入脚本中的交互工具,expect可以根据回显结果来执行预先写好的命令,但前提整个流程人必须熟悉才可以根据回显设置自动应答。
装软件包expect
yum -y install expect
这里直接用脚本演示
#!/bin/bashrm -rf /root/.ssh/known_hosts 删除登入记录保证每次出现 ( yes/no)
expect << EOF EOF开头结束其中的都传送给expect工具
spawn ssh 192.168.4.$1 spawn 命令
set timeout 60 设置个超时时间60秒
expect "yes/no" {send "yes\r"} 回显出现yes/no 输入 yes \r回车 expect "password" {send "123456\r"} 回显出现password 输入123456 \r回车
expect "#" {send "mkdir 123\r"} 回显出现# 表示远程成功了 创建目录 \r回车
expect "#" {send "exit\r"} 最后一行有bug不执行推出所以必须多以行
EOF
出来执行脚本ojbk
rm -rf /root/.ssh/known_hosts 这个步骤可以用其他替换是其不出现yes/no ssh -o StrictHostKeyChecking=no IP