我正在开展一个小项目,需要使用OpenMPI来制作" mpicc"工作。 我创建了一个文件make_cmd:
#!/bin/bash
module load OpenMPI
然而,在执行./make_cmd之后,我被告知:
mpicc:找不到命令
但是如果我只是在命令行输入:module load OpenMPI
,那么mpicc正在工作。
为什么?谢谢!
答案 0 :(得分:1)
请参阅邻近网站上的this answer。
因为module
是别名/ shell函数而不是二进制程序,所以在运行脚本时创建的非交互式子shell中不一定可用。{p}。你可以运行source make_cmd
,因为这只会运行当前交互式shell中的命令。在这种情况下,您可以放弃#!/bin/bash
行。