如何读取使用cli设置的结构环境变量

时间:2014-05-01 16:37:19

标签: python environment-variables fabric

如何阅读使用cli工具设置的环境变量。例如,我的cwd中有一个空的fabfile.py,当我运行fab --set password=foo,host_string=host1然后运行python控制台以查看是否设置了这些fab环境变量 -

from fabric.api import env
print env.host_string 

我一无所获?

2 个答案:

答案 0 :(得分:3)

根据documentation,多个env变量必须以逗号分隔:

fab --set password=foo,host_string=host1

演示:

$ cat fabfile.py
from fabric.api import env

print env['hello']
print env['world']
$ fab test --set hello=1,world=2
1
2

答案 1 :(得分:0)

您无法像这样设置host_string。在对传递的原始主机进行一些字符串操作之后,在内部设置该变量。如果您想指定要使用的特定主机,请调用您的fab任务,只需使用此标志并将其称为:

$ fab -H host1 --set password=foo sometask

如果要将主机传递给函数,也可以执行此操作,但使用其他变量名称。