#!/bin/bash
#Description: auto login the Remote Server
#Author:majinxu
#Version:1.0
#CreateTime:2018-3-012 18:34:41
user="zhangsan"
passwd="123456"
host_list=( "st1.qa.bj2.yongche.com"
"st2.qa.bj2.yongche.com"
"st3.qa.bj2.yongche.com"
)
#seletc the host
select host in ${host_list[@]};
do
break
done
#execute the ssh action
expect -c "
spawn ssh $user@$host
expect {
\"yes\/no\" { send \"yes\n\"; exp_continue}
\"password:\" { send \"$passwd\n\" }
}
interact
"
解释:
- expect -c : -c参数跟字符串
- spawn ssh $user@$host 连接服务器
- expect {
\"yes\/no\" { send \"yes\n\"; exp_continue}
\"password:\" { send \"$passwd\n\" }
}
输入并接收用户名密码
是
"yes/no" { send "yes\n"; exp_continue}
"password:" { send "$passwd\n" }
} 转义后的结果 - interact 执行完成后保持交互状态,把控制权交给控制台
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。