首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

关于 Mac 上的终端 iTerm2 的问题

  •  
  •   VANHOR · 26 天前 · 748 次点击
    想配置一下 iTerm2 连接服务器的快捷命令,上网查了半天,只找到单纯用密码登陆的,但是公司的服务器是有一个动态口令,目前没找到怎么先让我输入动态口令再自动输入密码的脚本...有人知道吗?

    目前是这样配置的

    #!/usr/bin/expect

    set PORT 22
    set HOST ***.**.12.20
    set USER root
    set PASSWORD ************

    spawn ssh -p $PORT [email protected]$HOST
    expect {
    "yes/no" {send "yes\r";exp_continue;}
    "*password:*" { send "$PASSWORD\r" }
    }
    interact
    12 回复  |  直到 2019-06-21 20:23:07 +08:00
        1
    Hilong   26 天前 via Android
    这个和 item2 有啥关系。就是 shell 脚本啊。你在自动填充密码前加一个输入动态口令的输入不就行了。
        2
    hhyvs111   26 天前
    在 profiles 里配置,general 里有一个 send text at start,输入你的脚本调用,然后输入跳板机动态密码后就可以自动执行你这个脚本。
        3
    xuuuu   26 天前
    可以试试 iTerm2 的 password manager
        4
    VANHOR   26 天前
    @Hilong 试了半天,总写不对...
        5
    Melodyer   26 天前
    ``` bash
    #!/usr/bin/expect -f
    set port 1234
    set user root
    set host 67.xx.xx.xx
    set password xxxxxx
    set timeout -1

    spawn ssh -p$port [email protected]$host
    expect "*assword:*"
    send "$password\r"
    interact
    expect eof

    ```
    上面是我平时用的,针对第一次的 yes 没有处理,先手动 ssh 一次以后直接可以用这个脚本。
        6
    Melodyer   26 天前
    @Melodyer 居然不支持 Markdown,去掉第一行 ```bash 和最后一行 ```。
        7
    Melodyer   26 天前
    哇,没看到楼主的需求,忽略我发的。。
        8
    singerll   26 天前 via Android
    xshell 就没这种烦恼了。。。
        9
    VANHOR   26 天前
    @singerll 是....Mac 下比较麻烦
        10
    VANHOR   26 天前
    @Melodyer 嗯那没事,还是谢谢你。
        11
    VANHOR   26 天前
    @xuuuu 试了下,感觉这个可以。( :
        12
    Jackxun123   26 天前
    推荐 sshpass
    https://www.cnblogs.com/onlyfu/p/4460160.html
    写脚本也是可以的,不过还是要去加参数
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2476 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 20ms · UTC 14:49 · PVG 22:49 · LAX 07:49 · JFK 10:49
    ♥ Do have faith in what you're doing.