【问题标题】:zsh ssh-add -L parse error near `-L'zsh ssh-add -L `-L' 附近的解析错误
【发布时间】:2013-03-06 12:52:34
【问题描述】:

我正在尝试跑步 ssh-添加 -L (或任何其他虚线选项),并且 zsh 返回 zsh: parse error near `-L'。这是我第一次看到 zsh 这样做,并且它没有使用任何其他命令。

有什么想法吗?

【问题讨论】:

    标签: ssh zsh


    【解决方案1】:

    首先要查明ssh-add 是别名还是shell 函数,而不是二进制可执行文件/usr/bin/ssh-add

    其次,尝试在没有自定义 ZSH 配置的 ZSH 会话中运行相同的命令。要获得干净的环境,请运行

    env -i TERM=$TERM LC_ALL=$LC_ALL LANG=$LANG zsh -f
    

    然后再试试ssh-add -L,告诉我们你看到了什么。

    此外,请发布以下输出:

    uname -a
    zsh --version
    

    【讨论】:

    • 好的,谢谢。我是一个白痴。我在 .zshrc 中添加了这一行: alias ssh-add='ssh-add || { eval ssh-agent && ssh-add }' 因为当我的 ssh-agent 不在这里时,我已经厌倦了不得不创建它。但这使我的 ssh-add 无法采用命令行选项。我得想点更聪明的办法。 \ssh-add -L 效果很好。
    • 如果您在 OS X 或 Ubuntu 上本地运行代理,只需让系统自己的钥匙串为您启动代理即可。您应该只需要导入每个密钥一次。然后在~/.ssh/config 中配置每个远程主机使用的密钥(主机名可以使用通配符)。最后,要在远程主机上使用 ssh-agent,请将选项 ForwardAgent yes 添加到您信任的主机上。
    猜你喜欢
    • 2018-10-19
    • 2021-10-26
    • 1970-01-01
    • 1970-01-01
    • 2021-08-19
    • 2015-08-31
    • 2022-11-05
    • 2017-06-10
    • 1970-01-01
    相关资源
    最近更新 更多