Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为VirtualEnvrapper配置bash别名_Python_Bash_Virtualenvwrapper - Fatal编程技术网

Python 为VirtualEnvrapper配置bash别名

Python 为VirtualEnvrapper配置bash别名,python,bash,virtualenvwrapper,Python,Bash,Virtualenvwrapper,我已经从Ubuntu 12.0.4.3的源代码编译了Python 2.7.6。可以在/opt/python276/bin/python2.7 然后,我在中创建了别名python276=/opt/python276/bin/python2.7 在bash终端中,我可以键入python276并接收正确的解释器,但是当我尝试使用virtualenvwrapper创建virtualenv时: puffin@ubuntu:/opt/python276/bin$ mkvirtualenv test -p p

我已经从Ubuntu 12.0.4.3的源代码编译了Python 2.7.6。可以在
/opt/python276/bin/python2.7

然后,我在
中创建了
别名python276=/opt/python276/bin/python2.7

在bash终端中,我可以键入python276并接收正确的解释器,但是当我尝试使用virtualenvwrapper创建virtualenv时:

puffin@ubuntu:/opt/python276/bin$ mkvirtualenv test -p python276
The executable python276 (from --python=python276) does not exist
我错过了什么?我可以使用python系统创建VirtualNVs,但不能使用编译后的系统

**编辑**

我终于找到了我想要的东西。 创建virtualenv而不必指定实际路径的方法是创建符号链接。在这种情况下,我将创建一个从Python可执行文件到
~/bin
的符号链接,然后将
~/bin
前置到我的路径

ln -s /opt/python3.3/bin/python3.3 ~/bin/python33
echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

然后我可以执行
mkvirtualenv testenv-p python33

注意,调用别名时别名会起作用。如果将其用作其他命令的参数,则不会对其进行解释。因此,在
mkvirtualenv…
中,应该明确指定此python的路径

否则,您可以设置一个变量

mypython276=/opt/python276/bin/python2.7
然后呢

mkvirtualenv test -p $mypython276


正如注释中所述,您还可以将
/opt/python3.3/bin/
添加到
路径
变量中。

这是唯一的解决方法吗?我相信我过去可以使用这个别名。据我所知,是的@puffin。你能展示一下过去可以使用别名的情况吗?也许我遗漏了什么。不,找不到一个例子。我一定是弄错了。我已经编辑了我的答案,因为我能够找到一个使用符号链接会产生我想要的效果的例子。很好的观点!这让我认为,可以通过在PATH变量中添加
/opt/python3.3/bin/
跳过符号链接步骤