(相关Shell script to export environment variables in make)使用脚本创建环境变量化妆
我想用一个shell脚本来创建一些变量,使以后可以使用。我以为我可以源脚本:
target:
. myscript
echo ${FOO} # FOO is exported in myscript
但这似乎并不奏效。有没有办法做到这一点?
(相关Shell script to export environment variables in make)使用脚本创建环境变量化妆
我想用一个shell脚本来创建一些变量,使以后可以使用。我以为我可以源脚本:
target:
. myscript
echo ${FOO} # FOO is exported in myscript
但这似乎并不奏效。有没有办法做到这一点?
如何使用include directive代替。将变量defs放在单独的makefile中而不是shell脚本中。
这会起作用,但不是完全如此。为每一行调用一个新的shell,所以在你给出的例子中,echo $ {FOO}在一个新的shell中。你可以简单地做:
target: . myscript; \ echo $${FOO}
注意,您需要在$$ {} FOO
使用的include directive设置target-specific variable两个“$”符号可能是最接近你问对于。
+1这是最简单的解决方案。 – l0b0 2012-02-29 16:58:42