首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从bash脚本内部加载模块?

如何从bash脚本内部加载模块?
EN

Stack Overflow用户
提问于 2017-10-25 02:44:48
回答 2查看 2.9K关注 0票数 2

我在试着运行一个脚本。从本质上讲,我需要加载一些模块,然后执行python脚本。所以像这样的东西...

代码语言:javascript
复制
#!/usr/bin/env bash
module use /PATH/TO/MODULEFILE
module load MY_MODULE

python my_script.py

我得到的问题是,每次我尝试执行脚本时,我得到这个错误-“模块:命令找不到”。我不知道如何更改脚本来修复这个问题。我可以从shell运行module命令。我还运行了"whereis -b模块“,得到的结果是”模块:“。

我需要做什么才能从脚本中加载这个模块?谢谢

EN

回答 2

Stack Overflow用户

发布于 2018-07-31 03:30:01

您可以通过获取模块安装的init目录中提供的module初始化脚本,从您的python脚本中启用python.py命令。

下面这段python代码定义了module函数,然后启用了模块路径并加载了模块文件:

代码语言:javascript
复制
#!/usr/bin/python
import os
exec(open('/PATH/TO/MODULES/init/python.py').read())
module('use', '/PATH/TO/MODULEFILE')
module('load', 'MY_MODULE')
票数 0
EN

Stack Overflow用户

发布于 2019-12-06 05:14:15

如果想要在bash脚本中启用module,只需使用不同的命令运行脚本即可。对我来说,以. script.sh./script.sh身份运行脚本script.sh可以正确加载模块,但以sh script.sh身份运行将导致上面描述的错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46917876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档