MacOS 上让 iTerm2 记住SSH用户名密码

  • 2019 年 12 月 30 日
  • 筆記

win下习惯使用 xshell,但是 xshell 并无 MacOS 版。了解到了 iterm2 这款软件,通过一些改造也能实现类似的效果。

1. 安装 expect

brew install expect

如果遇到 man 目录的权限问题可以执行以下命令后在执行安装命令

sudo chown -R $(whoami) /usr/local/share/man/man5

2. 创建 except 脚本

sudo vim /usr/local/bin/iterm2login.sh    #!/usr/bin/expect    set timeout 30  spawn ssh -p [lindex $argv 0] [lindex $argv 1]@[lindex $argv 2]  expect {          "(yes/no)?"          {send "yesn";exp_continue}          "password:"          {send "[lindex $argv 3]n"}  }  interact

这里[lindex $argv 0], [lindex $argv 1],[lindex $argv 2], [lindex $argv 3] 分别代表着 端口号 用户名 服务器地址 密码 4个参数。 还需要给脚本执行权限

sudo chmod +x /usr/local/bin/iterm2login.sh

3. 新建 profiles

iTerm2 -> Preferences -> Profiles 为每个服务器的连接, 打上不同的Tag, 就自动按Tag分好组了.

另外 还可以在Colors中设置每个打开Tab 的颜色. 多个项目同时操作也不怕搞错了.

4. 最终效果

如图,使用起来方便多了


方法来源于网上,稍作修改