Env not modify when loading module in modulefile
我想将一个模块加载到一个模块文件中(以解决依赖关系)。
我的模块:
1 2 3 4 5 6 7 8 9 10 11 12 | #%Module######################################## ## ## Modulefile # proc ModulesHelp { } { puts stderr"Env for MyProg" } proc addPath {var val} { prepend-path $var $val } module load MyOtherModule addPath PATH /opt/MyModule/bin |
我的其他模块:
1 2 3 4 5 6 7 8 9 10 11 | #%Module######################################## ## ## Modulefile # proc ModulesHelp { } { puts stderr"Env for MyOtherProg" } proc addPath {var val} { prepend-path $var $val } addPath PATH /opt/MyOtherModule/bin |
当我运行
1 2 3 4 5 | $module list Currently Loaded Modulefiles: 1) MyModule 2) MyOtherModule $echo $PATH /opt/MyModule/bin:/usr/bin:/bin |
如果我在
任何人都知道发生了什么以及我缺少什么?
为了演示,试试这个
1 2 3 4 5 | proc addPath {var val} { puts stderr"BEFORE..." uplevel 1 [list prepend-path $var $val] puts stderr"AFTER..." } |
我们使用
(NB: