Bash Virtualenv:停用不工作
我正在使用一个名为“MyAppEnv”的venv,我试图编写一个可以运行的脚本,该脚本将调用Bash Virtualenv:停用不工作,bash,virtualenv,Bash,Virtualenv,我正在使用一个名为“MyAppEnv”的venv,我试图编写一个可以运行的脚本,该脚本将调用source bin/activate(省去一些击键)。我不小心在我的Appenv中运行了它。由于这样做,当我尝试停用MyAppEnv时,我得到bash:type:deactivate:notfound。这甚至发生在我创建的全新环境中,与MyAppEnv完全分离。我怎么把它拿回来?我无法退出我的环境,除非终止屏幕会话 您所要做的就是取消设置或重置所有激活的变量。您需要将PATH重置为上一个值。您需要取消设
source bin/activate
(省去一些击键)。我不小心在我的Appenv中运行了它。由于这样做,当我尝试停用MyAppEnv时,我得到bash:type:deactivate:notfound
。这甚至发生在我创建的全新环境中,与MyAppEnv完全分离。我怎么把它拿回来?我无法退出我的环境,除非终止屏幕会话 您所要做的就是取消设置或重置所有激活的变量。您需要将PATH
重置为上一个值。您需要取消设置PYTHON
和PYTHON\u路径
。你的静脉可能还有更多。通过阅读MyAppEnv
中的激活脚本来熟悉您自己。您发现,激活virtualenv与shell脚本中的工作方式不同。将mkvirtualenv安装为懒惰。deactivate命令只是一个别名,用于取消设置一些变量。不要运行shell脚本。@这听起来还不错。您能否更具体地说明我将如何重置这些变量/将它们设置为什么?我没有多少壳牌的专业知识,不想把事情搞得更糟$PYTHON和$PYTHON_PATH当前是空字符串-它们应该是什么?我假设$PYTHON_PATH是PYTHON所在的文件夹,但是仅仅var$PYTHON呢?如果它们是空字符串,就不要管它们。检查路径的内容。Venv ACTIVE在那里预先设置MyAppEnv/bin
。示例:echo$PATH
可能显示类似于/home/username/virtualenv/MyAppenv/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
。您只需删除第一个条目<代码>导出路径=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin@alvits好的,我已经更改了路径,但是我仍然在我的venv中(或者至少我的提示符仍然以其名称作为前缀),并且deactivate仍然不起作用。你所要做的就是取消设置或重置所有激活的变量。您需要将PATH
重置为上一个值。您需要取消设置PYTHON
和PYTHON\u路径
。你的静脉可能还有更多。通过阅读MyAppEnv
中的激活脚本来熟悉您自己。您发现,激活virtualenv与shell脚本中的工作方式不同。将mkvirtualenv安装为懒惰。deactivate命令只是一个别名,用于取消设置一些变量。不要运行shell脚本。@这听起来还不错。您能否更具体地说明我将如何重置这些变量/将它们设置为什么?我没有多少壳牌的专业知识,不想把事情搞得更糟$PYTHON和$PYTHON_PATH当前是空字符串-它们应该是什么?我假设$PYTHON_PATH是PYTHON所在的文件夹,但是仅仅var$PYTHON呢?如果它们是空字符串,就不要管它们。检查路径的内容。Venv ACTIVE在那里预先设置MyAppEnv/bin
。示例:echo$PATH
可能显示类似于/home/username/virtualenv/MyAppenv/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
。您只需删除第一个条目<代码>导出路径=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin@alvits好的,我已经更改了路径,但是我仍然在我的venv中(或者至少我的提示符前面仍然有它的名称),并且deactivate仍然不起作用。