gpt4 book ai didi

python - 在终端中设置路径

转载 作者:行者123 更新时间:2023-12-02 13:06:12 29 4
gpt4 key购买 nike

我要在Mac上安装Homebrew才能安装Macvim。安装Homebrew之后,系统会提示我运行brew doctor,这反过来会生成许多警告。我已经解决了其中的几个问题,但有两个问题:

警告:在您的PATH中找到了Python。
这可能会导致构建问题,因为此软件会自行安装
将iconv和libxml2的副本复制到以下目录中:
其他构建系统。

我不确定是应该忽略掉它还是寻找卸载Enthought Python的方法。

警告:/ usr / bin出现在/ usr / local / bin之前
这意味着将使用系统提供的程序,而不是那些
由Homebrew提供。两种途径都存在以下工具:

git
git-cvsserver
git-receive-pack
git-shell
git-upload-archive
git-upload-pack


考虑设置您的PATH,以便/ usr / local / bin
出现在/ usr / bin之前。这里是单线:
echo export PATH =“ / usr / local / bin:$ PATH” >>〜/ .bash_profile

我跑了

echo export PATH =“ / usr / local / bin:$ PATH” >>〜/ .bash_profile

几次,但继续收到相同的警告。这是我的路径

nngrey$ echo $PATH
/Users/nngrey/.rvm/gems/ruby-2.0.0-p247@railstutorial_rails_4_0/bin:/Users/nngrey/.rvm/gems/ruby-2.0.0-p247@global/bin:/Users/nngrey/.rvm/rubies/ruby-2.0.0-p247/bin:/Users/nngrey/.rvm/bin:/Library/Frameworks/Python.framework/Versions/Current/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/Users/nngrey/bin


好的,我在这里找到了第二个问题的答案: How to modify PATH for Homebrew?

我只需要重新启动终端即可。不过,仍然不确定如何处理Python。

任何建议,将不胜感激。谢谢

最佳答案

解决两个问题:编辑您的~/.bash_profile文件
/usr/bin occurs before /usr/local/bin警告:
此警告告诉您$PATH环境变量将/usr/bin的优先级列为比/usr/local/bin更高的优先级,我认为这是home brew安装软件包的默认位置。
如果您忽略此设置,则意味着如果您已经将“ home brew”程序先前安装(不使用“ home brew”)安装或升级到其他位置,则该程序可能会使用较旧的副本和而不是较新的“家庭酿造”安装版本。
$PATH变量可能是Unix Shell环境变量中最重要的变量(您可以键入env列出shell中的环境变量),因为它定义了计算机在查找程序时将在其中搜索的目录顺序。执行。首先指定最高优先级路径名。
您可以通过在Terminal.app中键入来查看~/.bash_profile的内容:

$ cat ~/.bash_profile

切记:不要键入$,它只是表示终端提示。
它应该打印出如下内容:
# Setting PATH for EPD_free-7.3-2
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/Current/bin:${PATH}"
export PATH

请注意,Enthought的注释指示他们将原始 ~/.bash_profile保留在同一目录( .bash_profile.pysave)中名为 $HOME的副本中。如果您想查看该文件,请使用 cat或文本编辑器将其检出。如果您决定恢复到原来的状态,可以通过删除 ~/.bash_profile文件并将 .bash_profile.pysave重命名为 .bash_profile来实现。 (这不是我的选择,因为过去我必须第二次安装Enthought的发行版(可能在其自身之上),所以我的 .bash_profile.pysave仍然包含Enthought的配置,而我的 ~/.bash_profile.列出了两个的副本理想的配置。)
这是Enthought分发,将 $PATH env变量设置为 ${PATH}。要显示 ${PATH}变量的含义,请在外壳中输入 echo $PATH。它应该表明Enthought自己的目录具有最高优先级(因为它们位于第一位):
$ echo $PATH
/Library/Frameworks/Python.framework/Versions/Current/bin:/Library/Frameworks/Python.framework/Versions/Current/bin:/usr/local/bin:/usr/local/sbin:~/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin

如果仔细查看上面的示例,您会发现 /usr/local/bin在列表(!)中出现两次,一次出现在第三位,一次出现在倒数第二位。它们之间出现了 /usr/bin,但 brew doctor的解析器正在检测到一个问题(这可能是 brew doctor错误,仅检查尾随的 /usr/local/bin,但是几乎可以肯定有一个Enthought错误,因为他们离开了我其中有两个 $PATH/usr/local/bin定义。如果您两次都没有看到 /usr/local/bin/,则可能是因为我可能在终端上安装了两次Enthought。)
因此,即使这里可能没有真正的问题, brew doctor仍然会这样认为,并且我们仍然需要摆脱具有最高优先级的Enthought目录,因为如果我们想在Windows中获取不同的Python发行版,这些条目可能会造成干扰。未来使用“家庭酿造”。
Shell将按从左到右的顺序在 $PATH变量中查找这些位置,以执行命令等。
请记住,路径之间用冒号( :)分隔,并按从左到右的降序排列,优先级最高。
方法1-(“快速简便”版本):
A)重新定义 $PATH变量,将此命令粘贴到Terminal中:
$ echo 'export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"' >> ~/.bash_profile

(这会将( >>运算符)回显的字符串附加到 ~/.bash_profile文件的末尾。如果使用此命令,您仍然需要编辑〜/ .bash_profile以便稍后删除Enthought内容)
单击 here并向下滚动至步骤3,以获取有关此特定命令的更多信息。
或者,您可以 cd进入 $HOME目录,并将上述命令中的字符串手动添加到您的 .bash_profile中,如下所示,这是删除Enthought的配置的。
B)要禁用Enthought Python分发,请编辑〜/ .bash_profile文件:
转到您的主目录:
$ cd $HOME

要在例如TextEdit中编辑文件,请执行以下操作:
$ open -a "TextEdit" .bash_profile

找到这两行:
PATH="/Library/Frameworks/Python.framework/Versions/Current/bin:${PATH}"
export PATH

并通过在每行前面放置 #注释掉它们。然后保存文件。
(如果您计划不再使用Enthought发行版,则可以删除这些行和其他注释,而不必将其注释掉)
方法2-使用文本编辑器编辑文件(并解决两个问题)
(下面的解释假定不熟悉vim编辑器)
$ vim ~/.bash_profile

如果您没有写权限,则可能无法更改 ~/.bash_profile文件。如果是这样,请退出vim( ESC,然后键入 :q)并通过在上述vim命令前添加 sudo和一个空格来更改为超级用户。您可以稍后在外壳中再次键入 sudo来退出 exit(“超级用户”)。
当vim第一次打开时,您会看到命令模式,在该模式下键入将完全不会更改文件内容,而是在窗口底部的提示符下添加命令(例如 :q退出或 :w写入(保存)更改)。
在vim中,您可以使用箭头键(或 HJKL键)移动。找到要编辑的行后,按 I键进入 -INSERT-模式并开始在光标之前插入字符(在命令模式下按 A键也将退出命令模式,但在此之后将开始插入文本。光标)。
如果您认为将来可能要使用Enthought发行版,则可以通过在每行的开头放置#来注释掉所有行,如下所示:
# Setting PATH for EPD_free-7.3-2
# The original version is saved in .bash_profile.pysave
# PATH="/Library/Frameworks/Python.framework/Versions/Current/bin:${PATH}"
# export PATH
# export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"

如果您没有计划使用Enthought发行版,或者已经卸载了它,只需从〜/ .bash_profile文件中删除以上所有行。
要为$ PATH环境变量声明一个新定义,请在下面添加以下行:
export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"

编辑完文件后,按 ESC离开 -INSERT-模式并返回命令模式。然后键入 :wq编写更改并退出vim编辑器。然后,您将返回到外壳。
最后,通过输入以下内容来获取新保存的 ~/.bash_profile
$ source .bash_profile

如果仅注释掉Enthought行,则可以通过取消注释这两行来返回到 .bash_profile并再次启用Enthought分发。
现在运行 brew doctor,您应该一切顺利。如果它没有没有警告就无法运行,请杀死Terminal并重新打开它,然后重试。
现在运行 echo $PATH应该显示:
/usr/local/bin:/usr/local/sbin:~/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin

关于python - 在终端中设置路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19102869/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com