永久性地在OSX中设置PATH环境变量

时间:2014-03-17 21:02:04

标签: macos bash unix path environment-variables

我已经阅读了几个关于如何在OSX上永久设置环境变量的答案。

首先,我尝试了这个,How to permanently set $PATH on Linux/Unix?但是我收到了一条错误消息no such file and directory,所以我想我可以尝试~/.bash_profile代替~/.profile但是它不起作用

其次,我找到了这个解决方案How to set the $PATH as used by applications in os x,建议在

中进行更改
  

〜/ .MacOSX / environment.plist

但我又遇到no such file and directory错误。

我需要一种方法来设置这些变量,以便每次打开新的终端会话时都不会再次设置它们。

9 个答案:

答案 0 :(得分:205)

您必须将其添加到/etc/paths

参考(适用于我):Here

答案 1 :(得分:20)

我发现有些文件可能会影响macOS中的$PATH变量(适用于我,10.11 El Capitan),如下所示:

  1. 正如最高投票的答案所说,vi /etc/paths,从我的角度推荐。

  2. 另外请不要忘记/etc/paths.d目录,其中包含可能影响$PATH变量的文件,在我的情况下设置gitmono-command路径。您可以ls -l /etc/paths.d列出项目,rm /etc/paths.d/path_you_dislike删除项目。

  3. 如果您使用的是“bash”环境(例如默认Terminal.app),则应该查看~/.bash_profile~/.bashrc。可能还没有该文件,但这两个文件对$PATH有影响。

  4. 如果您使用的是“zsh”环境(例如Oh-My-Zsh),则应该检查~./zshrc而不是~/.bash*

  5. 并且不要忘记重新启动所有终端窗口,然后echo $PATH $PATH字符串为PATH_SET_IN_3&4:PATH_SET_IN_1:PATH_SET_IN_2

    注意前两种方式(/etc/paths/etc/path.d)位于/目录中,这将影响您计算机中的所有帐户,而最后两种方式(~/.bash*~/.zsh*)位于~/目录(又名/Users/yourusername/),这只会影响您的帐户设置。

    了解详情:Mac OS X: Set / Change $PATH Variable - nixCraft

答案 2 :(得分:10)

你也可以添加这个

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

~/.bash_profile,然后创建~/.bashrc,您可以在其中添加更多路径到PATH。 .

的示例
export PATH=$PATH:.

答案 3 :(得分:4)

您可以打开以下任何文件:

/etc/profile
~/.bash_profile
~/.bash_login   (if .bash_profile does not exist)
~/.profile      (if .bash_login does not exist)

并添加:

export PATH="$PATH:your/new/path/here"

答案 4 :(得分:4)

要在MacOS中将新路径添加到PATH环境变量中,只需在/etc/paths.d目录下创建一个新文件,然后添加要在该文件中设置的写入路径。重新启动终端。您可以在提示符下使用echo $PATH进行检查,以确认是否已将路径添加到环境变量中。

例如:将新路径/usr/local/sbin添加到PATH变量中:

cd /etc/paths.d
sudo vi newfile

将路径添加到newfile并保存。

重新启动终端,然后输入echo $PATH确认

答案 5 :(得分:3)

如果您使用的是 zsh,请执行以下操作。

  1. 打开 .zshrc 文件 Deployment Controller

  2. 您将在此处看到带注释的 $PATH 变量

    nano $HOME/.zshrc
    # If you come from bash you might have to change your $PATH.

  3. 删除注释符号 (#) 并像这样使用分隔符 (:) 附加您的新路径。

<块引用>

出口 PATH=$HOME/bin:/usr/local/bin:/Users/ebin/Documents/Softwares/mongoDB/bin:$PATH

  1. 激活更改# export PATH=$HOME/bin:/usr/local/...

大功告成!!!

答案 6 :(得分:1)

我尝试了第一种方法并经历了参考页面,执行良好的路径设置。但是当我回显$ PATH时它没有设置路径设置

答案 7 :(得分:0)

launchctl setenv environmentvariablename environmentvariablevalue

launchctl setenv environmentvariablename `command that will generate value`

使用正确的 ` 并记住重新启动应用程序或终端以使环境变量生效。

可以通过printenv命令查看环境变量。

注意:名为 path 的环境变量已经由其他人设置,因此我们在这里根本不会向该路径附加任何内容。

答案 8 :(得分:-1)

要在Mac中设置路径,可以遵循两种方法。

  1. 为变量名创建文件并粘贴其下的路径 /etc/paths.d并将文件提供给profile_bashrc。
  2. ~/.profile_bashrc中的路径变量导出为

    导出VARIABLE_NAME = $(PATH_VALUE)

  3. AND来源路径。它简单而稳定。

    您可以按path variableMac terminal设置任何linux