bash shell 错误:“没有这样的文件或目录”

Abh*_*ngh 17 bash virtualenv

我正在尝试在 Ubuntu 14.04 上安装Virtualenv包装器。但是每当我启动终端时,我都会收到错误提示 bash:

/usr/share/virtualenvwrapper/virtualenvwrapper_lazy.sh:没有这样的文件或目录。

我还通过使用检查了 bashrc 脚本gedit ~/.bashrc,但没有这样的行。有谁知道我错在哪里?

小智 22

我刚刚在 Linux Mint 上遇到了同样的问题。

以下文件导致了该问题:/etc/bash_completion.d/virtualenvwrapper

我做了一个备份(以防万一)并删除了它,现在一切似乎都运行良好。


use*_*747 22

就我而言,我之前使用 安装了 virtualenvwrapper apt-get install virtualenvwrapper,后来使用 卸载了它apt-get remove virtualenvwrapper,这留下了“配置”文件/etc/bash_completion.d/virtualenvwrapper。这个 bash 完成定义来自 bash(它与我的 .bashrc 无关)并导致错误消息。

解决方案是运行:

sudo apt-get purge virtualenvwrapper
Run Code Online (Sandbox Code Playgroud)

它清除了与 virtualenvwrapper 相关的所有文件。我卸载它的原因是使用 pip 的版本(更新),可以使用以下方法全局安装:

sudo pip install virtualenvwrapper
Run Code Online (Sandbox Code Playgroud)


小智 5

按照这些说明,我发现在获取 virtualenvwrapper bash 脚本时发生了错误,即:

source /usr/local/bin/virtualenvwrapper.sh
Run Code Online (Sandbox Code Playgroud)

该脚本引用了/etc/bash_completion.d/virtualenvwrapperarcticfeather 指出的文件。

使用以下命令打开脚本:

sudo nano /etc/bash_completion.d/virtualenvwrapper
Run Code Online (Sandbox Code Playgroud)

这是引用不存在的文件的地方。只需替换/usr/share/virtualenvwrapper/virtualenvwrapper_lazy.sh/usr/local/bin/virtualenvwrapper_lazy.sh,您就可以开始使用了!


kar*_*rel 1

您可以从 Ubuntu 软件中心或使用以下命令从终端 安装 virtualenv 扩展,以在 Ubuntu 14.04 中管理多个虚拟 Python 环境 ( virtualenvwrapper ):

sudo apt install virtualenvwrapper
gedit .bashrc
Run Code Online (Sandbox Code Playgroud)

将以下行添加到 .bashrc 的末尾。

source /usr/share/virtualenvwrapper/virtualenvwrapper.sh
Run Code Online (Sandbox Code Playgroud)

将更改保存到 .bashrc 并关闭 gedit。获取您的 .bashrc 以使更改生效。

cd 
source .bashrc
Run Code Online (Sandbox Code Playgroud)