我有一个bash函数myEnv
,它可以加载几个环境,我也使用了几个模块。例如,要设置我的环境,我可能会这样做
#!/usr/bin/env bash
myEnv program1
myEnv program2
module load program3
module load program4
我想在一个模块中处理所有这些问题。遗憾的是,tcl
不支持执行myEnv
来更改环境。除了重组myEnv
的工作方式之外,还有办法从myEnv
tcl
调用module
来处理这个问题吗?
我想写一个模块,比如programs1234
,这样我就可以module load programs1234
来处理myEnv
和两个module load
。
答案 0 :(得分:0)
设置全局env变量是否足以设置环境变量?例如:
set env(FOO) "Test variable foo"
set env(BAR) "One more variable"
...
# Execute a tcl program in the env configured above.
exec [info nameofexecutable] -f program3
因此,例如,如果program3打印出env(FOO)和env(BAR),您将看到这些值。
puts $env(FOO)
puts $env(BAR)