无法在Windows上运行virtualenv-commands安装的脚本

时间:2011-08-20 10:24:08

标签: python windows exec virtualenv virtualenv-commands

在Windows上运行安装的脚本时出现问题,可以在下面看到

C:\Users\Piotr>where python
C:\program files\Python\2.7\python.exe
C:\Users\Piotr>python c:\program files\Python\2.7\scripts\ve init
[Errno 2] No such file or directory
Is "ve-init" executable in the current path?
C:\Users\Piotr>

我尝试通过How to run installed python script?问题中的建议解决此问题,但没有运气:

C:\Users\Piotr>assoc .py
.py=Python.File
C:\Users\Piotr>ftype Python.File
Python.File=c:\program files\Python\2.7\python.exe "%1" %*
C:\Users\Piotr>dir /b "c:\program files\python\2.7\scripts"
easy_install-2.7-script.py
easy_install-2.7.exe
easy_install-script.py
easy_install.exe
pip-2.7-script.py
pip-2.7.exe
pip-script.py
pip.exe
ve-clone
ve-extend
ve-init.py
ve.py
virtualenv-script.py
virtualenv.exe    
C:\Users\Piotr>python c:\program files\Python\2.7\Scripts\ve.py init
[Errno 2] No such file or directory
Is "ve-init" executable in the current path?

我认为在这种情况下特别的是ve脚本通过OS(ve-init)运行命令脚本(ve-cloneos.execvp()等。)

1 个答案:

答案 0 :(得分:0)

解决方案是向.py环境变量添加PATHEXT扩展名,以便可以在不指定扩展名的情况下运行Python脚本(只要它们在PATH上)。

然而,这还不足以让 virtualenv-commands 在Windows上运行,因为这个软件包使用了Windows上没有的Unix特定工具。

有趣的是,我认为创建 virtualenv-commands 背后的想法是通过不使用shell脚本使其比 virtualenvwrapper 更具可移植性,但似乎当前的实现只支持Unix。