我正在尝试在Linux上加载多个模块来构建一个库,但是被告知命令“module”不存在。我已经在Google上搜索过并发现解决方法是要源化一个名为“module”的目录,但是我无法找到它,尽管进行了广泛的搜索。
我不太确定该怎么办,希望能得到帮助(可能需要知道我使用的makefile使用csh,而我的默认shell是bash)。谢谢!
我正在尝试在Linux上加载多个模块来构建一个库,但是被告知命令“module”不存在。我已经在Google上搜索过并发现解决方法是要源化一个名为“module”的目录,但是我无法找到它,尽管进行了广泛的搜索。
我不太确定该怎么办,希望能得到帮助(可能需要知道我使用的makefile使用csh,而我的默认shell是bash)。谢谢!
我尝试复现它,结果对我来说源代码
source /etc/profile.d/modules.sh
在 .sh
脚本中有助于 bash
和类似脚本。对于 csh
和 tcsh
,您需要添加
source /etc/profile.d/modules.csh
到脚本。请注意,这行必须首先出现,然后是
module load foo
行。
. /etc/profile
感谢https://forums.fedoraforum.org/showthread.php?262708-module-command-not-found论坛中fadishei的解决方案。/etc/profile.d/custom.sh
中。source /etc/profile.d/modules.sh
module load php74
重新启动并运行php --version
命令,以交叉检查当前安装的PHP版本是否为7.4。
zsh
而不是默认的bash
shell。bash
并提交脚本后,它成功运行了。我认为你需要在脚本中加入以下内容来定义模块命令:
module () {
eval `/usr/bin/modulecmd bash $*`
}
这对我来说是有效的
#!/bin/bash -i // it will make this interactive