脚本自动登陆shell脚本(简洁版)

来源:互联网 发布:微云同步盘for mac 编辑:程序博客网 时间:2024/06/05 15:38

背景:工作中各种线上机器的登陆脚本,有的还要需要先登录跳板机再登陆线上机器,有的还有动态口令,每次输入起来都很麻烦,使用自动化登陆脚本来管理太方便不过啦~
原理:shell调用expect来远程登陆
login.sh

#!/usr/bin/env bashrelay_name="$relay_name"relay_password="$relay_password"relay_host="xxx"token=$1echo "输入对应编号回车!"select server in "server01" "server02" "server03"dobreakdoneexpect -c "set timeout -1puts $serverspawn ssh $relay_name@$relay_hostset timeout 1expect -re \"*Password*\" {send \"$password\r\"}send \"ssh $server\r\"interact"

将脚本设置可执行,并添加到环境,以后就可直接调用了~

ps:设置一下长连接,每天只需登陆一次
在 ~/.ssh/config 中加入以下内容,如果没有这个文件就touch一个,权限需要600才可以生效

Host *    ControlPersist yes    ControlMaster auto    ControlPath ~/.ssh/master-%r@%h:%p    Compression yes
0 0
原创粉丝点击