是否有可能通过外部工具访问已经在windows中运行的virtualenv
?我需要通过执行django运行实例的python manage.py dosometing
来运行cron。对于这我想我会设置Windows任务,将执行类似cmd.exe C:\django\manage.py dosometing
,但我不明白如何做到这一点,如果django运行在virtualenv是否有可能访问Windows中已经运行的virtualenv
回答
是的,你可以。 virtualenv不像虚拟机,它不是运行。 virtualenv只是一个设置,你可以在一台机器上安装多个python。每个virtualenv都位于一个单独的目录中,因此你可以安装不同的库,不同版本的python等等。当你激活virtualenv时,你只需设置一些环境变量,如PATH
,它告诉python程序使用哪些python可执行文件和库。
所以当人们说'Django在virtualenv中运行'时,他们只是表示django正在运行..并且有一个virtualenv设置来控制Django使用哪个python安装。
如果在virtualenv中的文档看这里:https://virtualenv.pypa.io/en/stable/userguide/ ...
它会告诉你,你的激活脚本位于:
\path\to\env\Scripts\activate
凡\path\to\env
应的实际位置来代替你的virtualenv中。
因此,如果您在命令窗口中运行,请首先运行激活脚本,然后您的所有以下命令将位于virtualenv中。如果你从调度程序等运行,最简单的方法是创建一个首先运行激活脚本的批处理文件,然后创建django命令。这可确保您始终以正确的virtualenv运行。
如果你真的只有一个Python安装,那么技术上的virtualenv是没有必要的..在那种情况下,你可以编辑Windows的环境变量如下:
VIRTUAL_ENV="/path/to/your/virtualenv"
然后还,追加到你的Path
的结尾是你python和python脚本目录的路径。在我的系统上这些是:
C:\Python27\Scripts;C:\python27\;
..并确保您的路径中没有其他python目录。
如果打开PowerShell窗口并运行env
,它会告诉你你的环境变量的当前设置。如果你这样做,运行activate
(在你的virtualenv目录),然后再次运行env
,两者比较Path
(和其他变量)..然后你就能够轻松地看到activate
做你的环境,你然后可以将其添加到您的Windows配置中。
然后,当你运行python myprogram.py
这将是使用的virtualenv无需激活。
很抱歉,我可以在哪里编辑VIRTUAL_ENV和PATH变量? –
我目前在Windows 7上,在其他版本中可能会有所不同。但进入'控制面板','系统'..然后点击'高级系统设置',然后点击'环境变量'。或者,至少在Windows 7中,如果您在开始菜单的搜索框中输入'environment',则会出现设置环境变量的选项。 –
这里只有PATH在这里用C:\ Python \ Scripts; C:\ Python的。尝试像这样https://www.dropbox.com/s/ek05zeqn55fey20/Screenshot%202017-06-09%2022.04.49.png?dl=0并且没有激活,但是没有运气 –
- 1. 是否有可能运行asyncio.Server实例,而事件循环已经在运行
- 2. 是否有可能访问
- 3. 是否有可能的线已经执行
- 4. 我是否可以扩展已经过期的访问令牌
- 5. 是否有可能在windows azure上运行windows应用程序
- 6. 是否有可能从Windows PC访问IOS设备没有iTunes
- 7. 检查magento是否已经运行cronjob
- 8. rake检查是否已经运行
- 9. 检查CountDown是否已经运行
- 10. 检查cronjob是否已经运行
- 11. 是否可以附加到已经运行的gdb进程?
- 12. 是否可以从已经运行的进程构造ProcessStartInfo?
- 13. 如何检查在virtualenv中运行的脚本是否访问全局python
- 14. 是否有可能确定R是否在Unix或Windows环境中运行
- 15. 是否有可能知道[UIDynamicItemBehavior addLinearVelocity:forItem:]何时已完成运行?
- 16. 是否有可能在android中访问运行时解密文件?
- 17. Dart是否已经有Redis数据访问框架?
- 18. Liquibase可以检测它是否已经运行?
- 19. 是否有可能知道我们是否已经在iframe中了
- 20. 是否有可能检查一个Angular应用程序是否已经运行应用程序模块?
- 21. 是否有可能在Windows上运行linux docker镜像
- 22. 是否可以在已经有主函数的cpp文件上运行测试?
- 23. 是否有可能在运行时
- 24. 是否有可能设置Windows中的文件的访问优先级
- 25. 检测jQuery是否已经有运行实例
- 26. 是否可以在Windows批次中编辑已经输出的行?
- 27. 是否有可能通过受限访问的Windows用户运行Interbase 2007服务器?
- 28. 是否可以在Eclipse中调试已经运行的Java程序?
- 29. 是否有可能访问相同的数组中的键 - PHP?
- 30. 是否有可能为windows phone创建无头可访问工具?
目前还不清楚你在问什么。 virtualenv不是运行的,它只是设置环境变量和路径的一种方式。 –