如何修复/usr/local/bin/virtualenv:/usr/bin/python:错误的解释器:没有这样的文件



当我试图在Ubuntu 18.04上使用virtualenv时,我得到了这个错误:

bash:/usr/local/bin/virtualenv:/usr/bin/python:糟糕的解释器:没有这样的文件或目录

Python 2和3运行良好:

josir@desenv16:~/bin$ which python3
/usr/bin/python3
josir@desenv16:~/bin$ python3
Python 3.6.9 (default, Apr 18 2020, 01:56:04) 
[GCC 8.4.0] on linux

我已经尝试过发布virtualenv:

sudo apt-get purge --auto-remove virtualenv
sudo apt-get purge --auto-remove python-virtualenv
sudo apt-get purge --auto-remove python3-virtualenv

但当我再次安装时,错误仍然存在。

bash:/usr/local/bin/virtualenv:/usr/bin/python:糟糕的解释器:没有这样的文件或目录

错误在"/usr/local/bin/virtualenv"中--它的第一行(shebang(是#!/usr/bin/python,而您的系统中没有这样的文件。

我相信导致这种情况的事件流是:您很久以前就将virtualenvpip(而不是apt(一起安装,并将/usr/local/bin放在$PATH的前面。然后你升级了你的系统;升级删除了/usr/bin/python,现在您只有/usr/bin/python3

现在你必须决定走哪条路线:apt还是pip。如果选择apt,请删除/usr/local/bin/virtualenv

如果你选择pip:我的建议是尽可能多地卸载与apt一起安装的python包;重新安装virtualenv;这应该是安装有CCD_ 16的唯一附加包。为每个项目/任务创建一个虚拟环境,并使用pip安装软件包。

PS。个人经历:几年前,我从apt转为pip

PPS。避免使用sudo pip——不要妨碍系统安装。安装到虚拟环境或pip install --user中。

通过debian包进行安装在过去会产生错误。你的问题的解决方案是使用pip:

sudo pip3 install virtualenv

这里的完整教程:如何在Linux 上安装适用于Python3的virtualenv

相关内容

最新更新