【问题标题】:PATH issue on MACMAC上的PATH问题
【发布时间】:2018-04-23 08:39:44
【问题描述】:

我遇到了一个我无法解决的问题(使用 OSX EL CAPITAN 10.11.6)

我正在使用 bash 终端(shell)。这是我的/.bash_profile

source ~/.profile
export PATH="/Applications/MAMP/bin/php/php7.2.1/bin/"
export PATH="/Applications/MAMP/htdocs/phalcon-devtools:$PATH"
export PTOOLSPATH=/Applications/MAMP/htdocs/phalcon-devtools
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"
export PATH="/usr/bin:/bin:/usr/sbin:/sbin"
alias composer="php /usr/local/bin/composer.phar"
export PATH="$HOME/.npm-packages/bin:$PATH"

每次我重新启动计算机时,PATH 仅包含 "/usr/bin:/bin:/usr/sbin:/sbin",我必须手动导出所有内容。

此外,当我在我的"/usr/local/bin/" 目录中安装某些东西时,重新启动时不会考虑它。例如,我今天早上安装了 Angular.js。重新启动后,如果我在我的 bash 终端中输入 "ng -v",我会得到 "command not found"

你知道我的电脑发生了什么吗? 感谢您的宝贵时间!

【问题讨论】:

  • 你用的是什么终端模拟器?当您加载它时,它配置为运行什么外壳?你用什么选项加载那个 shell?
  • "例如我今天早上安装了 Angular.js" — 怎么样? ng 文件保存在哪里?它还在吗?
  • 在第 2 行,您将整个 PATH 替换为硬编码的路径。在第 3 行,您为其添加一个值。在第 5 行,您为其添加了更多值。在第 6 行,您擦除所有内容,第 2、3 和 5 行所做的。
  • 感谢昆汀的反应。实际上,ng 文件已保存并且仍在目录 /usr/local/bin/ 中。对于您关于外壳的问题,恐怕我说不出来。那么你知道如何在导出路径时不删除之前的路径吗?
  • 好的,我明白了,我必须做 PATH=$PATH: 后跟链接。但这并不能解决问题。你知道为什么我的 /usr/local/bin 中安装的所有东西都不能被识别为命令吗? (npm, ng, composer,....) 为什么我的 PATH 不工作???如果我输入 php -v 我会得到 5.3.8,尽管它在我的 PATH 中是 7.2.1。

标签: macos path


【解决方案1】:

好的,我发现出了什么问题。 如果有人遇到同样的问题,您必须按照以下方式设置 ./profile(或 ./bash_profile)

export PATH=$PATH:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-18
    • 2020-03-24
    • 2017-12-05
    • 2019-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多