美文网首页
iTerm2使用脚本自动登录远程服务器

iTerm2使用脚本自动登录远程服务器

作者: 951丶 | 来源:发表于2018-01-05 14:03 被阅读0次

    在iTerm2下ssh不能自动登录,不自动登录每次输入命令太麻烦了。这里介绍一个采取expect脚本的方式实现iTerm2下ssh自动登录。

    1. 新建一个expect脚本 login.exp

    !/usr/bin/expect

    if { [llength $argv] < 4 } {
    puts "Usage: $argv0 ip port user passwd"
    exit 1
    }

    set ip [lindex $argv 0]
    set port [lindex $argv 1]
    set user [lindex $argv 2]
    set passwd [lindex $argv 3]
    set timeout 30

    spawn ssh -q -l$user -p$port $ip

    expect {
    "assword:" {
    send "$passwd\r"
    }
    "FATAL" {
    puts "\nCONNECT ERROR: $ip occur FATAL ERROR!!!\n"
    exit 1
    }
    "No route to host" {
    puts "\nCONNECT ERROR: $ip No route to host!!!\n"
    exit 1
    }
    }

    puts "\n—> Connected: $ip, pls enjoy yourself!\n"
    interact

    该脚本需要四个参数,

    1. 远程地址

    2. 远程端口

    3. 远程用户名

    4. 用户密码

    5. 将expect脚本copy到$PATH下(例如/usr/local/bin)
      cp login.exp /usr/local/bin/login.exp

    6. 在iterm2中设置登录脚本,用command+o的方式呼出profiles,点击Edit Profiles

      02108B6102882432AC76626EBBDE054F.jpg

    接着新建一个Profile,这里以我的webserver为例

    在红色涂抹的部分分别制定设置脚本、以及上面的四个参数。如
    login.exp 地址 端口 用户名 密码
    之间用空格分离。
    4.使用
    配好后,只要command+o的方式呼出profiles,双击需要打开的Profile。

    相关文章

      网友评论

          本文标题:iTerm2使用脚本自动登录远程服务器

          本文链接:https://www.haomeiwen.com/subject/wntsnxtx.html