Python <;pip3包>;命令在zsh上找不到,但在bash上找到
我使用Python <;pip3包>;命令在zsh上找不到,但在bash上找到,python,django,bash,pip,zsh,Python,Django,Bash,Pip,Zsh,我使用pip3安装django在我的Ubuntu 16.04上安装了django。但当我键入django admin并按enter键时,我发现命令未找到。我甚至使用以下方法验证: import django print(django.get_version()) 我使用zshell而不是bash。起初我认为这是一个django问题。因此,我安装了另一个pip3软件包virtualenv。然后我在终端上键入了virtualenv,并点击回车键,相同的输出:未找到命令 然后我确信这是一个外壳问题。
pip3安装django
在我的Ubuntu 16.04上安装了django。但当我键入django admin
并按enter键时,我发现命令未找到
。我甚至使用以下方法验证:
import django
print(django.get_version())
我使用zshell而不是bash。起初我认为这是一个django问题。因此,我安装了另一个pip3软件包virtualenv
。然后我在终端上键入了virtualenv
,并点击回车键,相同的输出:未找到命令
然后我确信这是一个外壳问题。因此,我将shell改回bash,并找到了django admin
和virtualenv
命令
如何让zsh发现pip3包?正如您所提到的,您的Python包可执行文件已安装到
~/.local/bin
。如果在bash
中选中$PATH
,您会发现它包含该路径。在默认的Ubuntu 16.04安装中,这是在~/.profile
中完成的<但是,code>zsh不执行此文件,因此其$PATH
中可能没有~/.local/bin
。您发现的解决方案是添加它:这可以通过修改.zshrc
自动完成,例如
export PATH=$HOME/.local/bin:$PATH
假设您还没有使用python中内置的venv功能,那么很可能在
.bashrc
或其他特定于bash的文件中有一些内容设置了需要从特定于zsh的概要文件(或两个shell共享的概要文件)执行的相关环境变量@Eisenheim你能在两个shell中执行echo$PATH并粘贴结果吗?您粘贴的两个文件似乎都不包含任何相关内容。也可能粘贴~/.zprofile
,~/.bash_profile
和~/.profile
,这是要粘贴的少数配置文件。作为一个临时解决方案,我直接将$HOME/.local/bin
添加到我的$PATH中,因为那里是django admin
所在的位置(如哪个django admin
所示)。这就是我所做的,带着怀疑和犹豫-\ux-但现在我肯定没有做错任何事情。