一、编辑shell脚本
1.1 不指定port
新建脚本 iterm2login.sh
#!/usr/bin/expect
set timeout 30
spawn ssh [lindex $argv 0]@[lindex $argv 1]
expect {
"(yes/no)?"
{send "yes\n";exp_continue}
"password:"
{send "[lindex $argv 2]\n"}
}
interact
#其中参数0表示user,参数1表示host ip,参数2表示password。
1.2 指定port
新建脚本 iterm2login.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
# 其中参数0表示port,参数1表示user,参数2表示host ip,参数3表示password。
二、 打开iterm2新建profile
打开iterm2 -> iterm2 -> preferences -> profiles -> 左下角的+,则右侧出现如下界面:
Name处编辑session名称(会在标题栏的profiles选项下显示),Command选中command,在command中按顺序从左到右填入如下内容(空格分隔):
对于无port情况:
expect shell脚本路径 用户名 目标服务器ip 密码
对于有port情况:
expect shell脚本路径 port 用户名 目标服务器ip 密码
设置结束后关闭preference界面,标题栏profiles选项,就会看到刚新建的profile,点击对应profile就可以建立session。
注:如果第一次使用出现卡顿的现象时,可以先手动ssh user@ip 登陆后。再次使用此profile就可以了。