-bash:/usr/bin/virtualenvwrapper.sh:没有这样的文件或目录

时间:2016-01-13 17:14:09

标签: linux bash shell python-3.x virtualenvwrapper

我无法确定shell在服务器登录时尝试运行/usr/bin/virtualenvwrapper.sh的位置。我希望virtualenvwrapper永久卸载,而不仅仅是从shell实例中删除。我以为我用pip uninstall virtualenvwrapper卸载了它,但是每次登录服务器时都会收到错误-bash: /usr/bin/virtualenvwrapper.sh: No such file or directory,好像存在某种遗留物。昨天我做了很多修修补补,我记不起所做的所有改变或者我是如何做到这一点的。它在哪里执行搜索virtualenvwrapper.sh

补充信息

$ echo $PATH
/usr/lib64/qt-3.3/bin
/usr/local/bin/ibm/lsf/9.1/linux2.6-glibc2.3-x86_64/etc
/usr/local/bin/ibm/lsf/9.1/linux2.6-glibc2.3-x86_64/bin
/usr/local/bin
/bin
/usr/bin
/usr/local/sbin
/usr/sbin
/sbin/usr/local/bin/CASAVA-1.8.2/bin
/usr/local/bin/blast
/usr/local/bin/mirdeep2
/usr/local/bin/velvet

$ sudo vim ~/.bashrc
1 # .bashrc
2
3 # Source global definitions
4 if [ -f /etc/bashrc ]; then
5         . /etc/bashrc
6 fi
7
8 # User specific aliases and functions

8 个答案:

答案 0 :(得分:7)

在ubuntu 12.04 LTS上,通过pip安装,它安装到

/usr/local/bin/virtualenvwrapper.sh

如果您使用的是Ubuntu 16.04或更高版本,则将其安装到

~/.local/bin/virtualenvwrapper.sh

答案 1 :(得分:4)

如果您使用bash shell,则在登录终端时可能会运行许多文件。

您应该检查~/.bashrc~/.bash_profile~/.bash_login~/.profile以查看" /usr/bin/virtualenvwrapper.sh"。

可能其中一个文件正在登录时运行,并包含您卸载的缺少的脚本。

答案 2 :(得分:2)

已通过@Tarique回答,已确认适用于Ubuntu 18。包装程序的外壳脚本virtualenvwrapper.sh在-~/.local/bin/

之内
(base) dhankar@dhankar-1:~/opencv_cuda$ cd ~/.local/bin/
(base) dhankar@dhankar-1:~/.local/bin$ ls -ltr
total 100
-rwxr-xr-x 1 dhankar dhankar 41703 Jul 23 20:56 virtualenvwrapper.sh
-rwxr-xr-x 1 dhankar dhankar  2210 Jul 23 20:56 virtualenvwrapper_lazy.sh
-rwxr-xr-x 1 dhankar dhankar   259 Jul 23 20:56 virtualenv

答案 3 :(得分:2)

设置虚拟环境 现在通过右键单击并选择“在终端中打开”选项,在主目录中打开您的终端。您还可以同时按下键盘上的 CTRLALTT 键以自动打开终端应用程序。

您首先需要创建一个特殊的目录来保存您的所有虚拟环境。因此,继续创建一个名为 virtualenv 的新隐藏目录。

$ mkdir .virtualenv

现在你应该为 Python3 安装 pip。

$ sudo apt install python3-pip

确认pip3安装。

$ pip3 --version

现在通过 pip3 安装 virtualenv。

$ pip3 install virtualenv

要查找您的 virtualenv 的安装位置,请键入:

$ which virtualenv

通过 pip3 安装 virtualenvwrapper:

$ pip3 install virtualenvwrapper

我们将通过添加一行来修改您的 .bashrc 文件,该行将调整每个新的虚拟环境以使用 Python 3。我们将虚拟环境指向我们上面创建的目录 (.virtualenv),我们还将指向virtualenv 和 virtualenvwrapper 的位置。

现在使用 Vim 编辑器打开 .bashrc 文件。

$ vim .bashrc

如果您还没有使用 Vim 编辑器或者您的计算机上没有安装它,您应该立即安装它。它是一个广泛使用的 Linux 编辑器,这是有充分理由的。

$ sudo apt install vim

安装 Vim 后,通过在终端中键入 vim .bashrc 命令打开文件 .bashrc 文件。导航到 .bashrc 文件底部,按字母 i 进入 Vim 的插入模式,并添加以下行:

#Virtualenvwrapper settings:
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_VIRTUALENV=/home/your_username/.local/bin/virtualenv
source ~/.local/bin/virtualenvwrapper.sh

完成后,按 esc 键。然后输入 :wq 并按回车键。此命令将保存并退出 Vim 编辑器。完成后关闭并重新打开终端。

要在 Python3 中创建虚拟环境并立即激活它,请在终端中使用以下命令:

$ mkvirtualenv name_of_your_env

您应该确认此环境是为 Python3 设置的:

$ Python -V

要停用环境,请使用deactivate 命令。

$ deactivate

要列出所有可用的虚拟环境,请在终端中使用命令 workon 或 lsvirtualenv(结果与 workon 相同,但以一种奇特的方式显示):

$ workon

$ lsvirtualenv

要激活一个特定的环境,请使用 workon + 您的环境名称:

$ workon name_of_your_env

有一天你可能需要使用几个有用的命令:

Rmvirtualenv 将删除位于 .virtualenv 目录中的特定虚拟环境。

$ rmvirtualenv name_of_your_env

Cpvirtualenv 会将现有的虚拟环境复制到新的虚拟环境并激活它。

$ cpvirtualenv old_virtual_env new_virtual_env

干得好!您现在已经创建了第一个独立的 Python 3 环境。

答案 4 :(得分:0)

sudo -H pip3安装virtualenvwrapper

我遇到了类似的问题,由于〜/ .cache / pip和〜/ .cache / pip / http不是当前用户所有,因此无法进行安装。使用-H或--set-home选项安装可以解决我的问题。

答案 5 :(得分:0)

对于以后发现此问题的任何人。 virtualenvwrapper.sh脚本现在位于Ubuntu 20.04.1 LTS上的/usr/share/virtualenvwrapper/virtualenvwrapper.sh(至少对我的VM而言)。

(可悲的是,我不能只对上面提到位置的帖子发表评论,因为新用户的声誉,它们将在一起)

答案 6 :(得分:0)

我也遇到了同样的问题,但这对我有用:-

  1. 创建一个目录来保存虚拟环境。mkdir $HOME/.virtualenvs
  2. export WORKON_HOME=$HOME/.virtualenvs 之类的行添加到您的 .bashrc.
  3. 添加像 source /path/to/this/file/virtualenvwrapper.sh 这样的一行 到您的 .bashrc
  4. 运行:source ~/.bashrc
  5. 运行:mkvirtualenv temp
  6. 这一次,包括“临时”环境。
  7. 运行:workon temp
  8. 虚拟环境已激活。

如果您使用的是 Ubuntu 20,请使用以下 ~/.bashrc 中给出的代码

export WORKON_HOME=~/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV=~ /.local/bin/virtualenv
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source ~/.local/bin/virtualenvwrapper.sh

答案 7 :(得分:0)

可能是你的 python 包安装在其他地方。所以试试:

$ which python
/home/tesla/miniconda3/bin/python

$ which virtualenvwrapper.sh
/home/tesla/miniconda3/bin/virtualenvwrapper.sh    

检查python安装的位置。就我而言,我使用的是 miniconda,因此系统无法找到文档中提到的位置。 如果上述位置不是 /usr/local/bin/virtualenvwrapper.sh 然后现在使用:

source /home/tesla/miniconda3/bin/virtualenvwrapper.sh

应该可以。