【问题标题】:OSX Terminal - application listed by 'which' does not run by defaultOSX 终端 - 由“which”列出的应用程序默认不运行
【发布时间】:2018-01-08 19:00:18
【问题描述】:

我在运行 SSH 时按照说明 on this page 更改了 Mac 终端的配置文件。简短的解释是它在 /usr/local/bin 中放置了一个包装脚本,该脚本会更改颜色,然后调用 /usr/bin/ssh。当我使用完整路径调用此脚本时,它可以完美运行,但是当我调用“ssh”时,它似乎使用了没有包装脚本的常规应用程序。

当我调用 'which ssh' 时,结果是 '/usr/local/bin/ssh'。我的 PATH 变量是 '/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/TeX/texbin',这对我来说看起来不错。包装脚本具有可执行权限('-rwxr-xr-x')。

我错过了什么?为什么要调用常规 ssh 而不是包装脚本,因为 'which' 命令指向我想要的那个?

【问题讨论】:

    标签: macos shell ssh terminal path


    【解决方案1】:

    您忘记清除 bash 的程序位置缓存。

    hash -d ssh
    

    【讨论】:

    • 其实问题在我看到你的答案之前就已经解决了,所以我无法测试它来证明你的解决方案。无论如何我都会接受它。谢谢!
    猜你喜欢
    • 2015-11-21
    • 2021-08-04
    • 2017-06-27
    • 2015-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-02
    • 2011-05-06
    相关资源
    最近更新 更多