如何发出“模块加载”命令 在 shell 或 Perl 脚本中(即非交互方式)
我可以交互地使用“module load xyz”命令,但是当从脚本运行时,它说找不到“module”命令。 有没有办法在脚本中加载模块?
I can use the "module load xyz" command interactively, but when run from a script, it says it can't find the "module" command. Is there any way of loading modules in a script?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
像这样启动 bash 脚本:
#!/bin/bash -l
请注意,在此之后使用 module load xyz 加载的模块只能从脚本文件内部使用。
Start your bash script like this:
#!/bin/bash -l
Note that modules loaded after this with module load xyz will only be available from inside the script file.
尝试
如果这不起作用,您很可能遇到别名问题。 可能需要。
您的脚本中
Try
If that doesn't work, you most likely have a problem with aliases. You may need
in your script.
如果您所说的模块指的是 Linux 内核模块,请查看
modprobe
(或更底层的insmod
)。 通常不需要使用 Linux 发行版加载到 shell 中的任何别名(例如module
)。(例如,我的发行版/设置中甚至没有
module
命令,因此我无法尝试查看您所指的模块类型。)If by modules you mean Linux kernel modules, look into
modprobe
(or the more low-levelinsmod
). There's usually no need to use whatever aliases (likemodule
) that your Linux distro loaded into your shell.(For example, I don't even have a
module
command on my distro/setup, so I can't try it to see what kind of modules you're referring to.)