第一种方式 (规范, 长期连接)
一. 在打开偏好设置
添加名称 以及 执行脚本路径:
expect ~/.ssh/wang_192.168.229.150
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TVU50dVpXY0Y0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL4MDNxUDM1YTMzAjMxAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
二. 编写脚本
➜ ~ cd ~/.ssh
➜ .ssh cat wang_192.168.229.150
#!/usr/bin/expect -f
set host 192.168.229.150
set user root
set password 123456
#set timeout -1
spawn ssh [email protected]$host
expect "*assword:*"
send "$password\r"
interact
expect eof
在
set
处, 填写对应 ip、user、password
三. 直接点击即可登陆
另一种方式 (简单, 临时连接)
一. 编写脚本 item2login.sh
➜ ~ cd ~/.ssh
➜ .ssh cat item2login.sh
#!/usr/bin/expect
set timeout 30
spawn ssh -p [lindex $argv 0] [lindex $argv 1]@[lindex $argv 2]
expect {
"(yes/no)?"
{send "yes\n";exp_continue}
"password:"
{send "[lindex $argv 3]\n"}
}
interact%
一. 配置 Profiles
注: 密码包含特殊符号, 可使用单引号括住再进行传参
例:
'@#$sfwer UYI¥'
第一种方式, 每个服务器都配置一个对应登录脚本, 更规范.
第二种方式, 直接配置一个登录脚本, 登陆信息在 Profiles 中搞定, 更简单.