有没有一种方法可以让python脚本加载和使用environment modules? os.system('module load xxx')
不起作用,因为它在子shell中执行它们(至少,我认为这是发生了什么)。在Python脚本中加载环境模块
14
A
回答
14
我知道这个问题有点老了,但它仍然是不够有关,我一直在寻找的答案,所以我张贴了我发现的作品,以及:
至少在3.2.9+源,可以包括蟒蛇“初始化”文件,以获得模块的Python函数的版本:
>>> execfile('/usr/local/Modules/default/init/python.py')
>>> module('list')
No Modulefiles Currently Loaded.
>>> module('load','foo')
>>> module('list')
Currently Loaded Modulefiles:
1) foo/1.0
我曾被告知早期版本可以做到没有.py扩展名,但这是第二手,所以ymmv。
0
不是直接的,但根据您的环境,这里有一种可能的解决方法。假设你可以用ENVVAR=value
前言系统命令,你可以做一些沿着这些路线:
import os
os.environ['EDITOR'] = 'vi'
cmd = "EDITOR=%(EDITOR)s $EDITOR" % os.environ
os.system(cmd)
代码分配六你的EDITOR环境变量,然后通过在命令行上运行命令, (在这种情况下)是EDITOR。
3
一个我们的管理员能够使用os.popen()
电话来解决问题对我来说,modulecmd
:
cmd = os.popen('/path/to/modulecmd python load my-module')
exec(cmd)
相关问题
- 1. 从Python加载环境模块
- 2. 在Python中的模块中加载脚本语言文件
- 3. 在Rails中,如何运行加载rails环境的脚本?
- 4. 如何在PHP脚本中加载Wordpress环境?
- 5. 如何让环境模块modulefile在加载模块时打印消息?
- 6. 需要在python不存在的环境中运行python脚本
- 7. RequireJS:在加载库模块后自动加载配置脚本
- 8. 目标WSGI脚本wsgi.py'不能作为Python模块加载
- 9. Django Apache:目标WSGI脚本不能作为Python模块加载
- 10. 通过systemd运行Python脚本无法加载模块
- 11. Python循环本地模块
- 12. python脚本来腌整个环境
- 13. 从Python脚本更改环境变量
- 14. c#,vb,java,python脚本测试环境?
- 15. 在python中延迟加载模块
- 16. Intrapack模块在python中的加载
- 17. 在python中延迟加载模块
- 18. 在perl脚本中插入rsh和模块加载
- 19. 无法在python虚拟环境中导入runpy模块
- 20. 在Python虚拟环境中没有名为yaml的模块
- 21. 在python虚拟环境中安装自定义模块
- 22. Python模块“psutil”无法在Windows 7 + VS2008SP1环境中构建
- 23. 重新加载Python模块
- 24. 无法加载Python模块
- 25. 动态加载python模块
- 26. 模块化python脚本中的Weblogic WSLT
- 27. 在基于mvc中的dev/prod环境的index.html中加载不同的脚本
- 28. 为Android脚本编写环境下载脚本
- 29. Typescript速记环境模块
- 30. 运行服务启动脚本时环境变量未加载
这更接近我们实际使用的东西(因为对'modulecmd'的'popen'调用位于您引用的'python.py'文件中),所以我会将其设置为答案。谢谢! – 2013-08-20 01:07:41
我几乎心脏病发作了!非常感谢你。 – yvesonline 2013-10-30 15:53:07
在我使用的服务器中是/usr/share/Modules/init/python.py。我发现路径正在运行模块 - 版本(正确的条目似乎MODULES_INIT_DIR) – lib 2015-02-13 07:54:35