情况:我有一些基于Fabric的工具,需要传递自定义环境变量才能ssh到远程主机(例如run()
之类的东西)。普通的ssh等效为
export VAR=foo; ssh -o SendEnv=VAR my.host.com
[我知道Fabric封装了一个名为paramiko的Python ssh库,该库本身似乎支持此功能,但是我对Fabric文档的阅读并没有向我展示将正确的值传递给run()
并将其传播到的方法。 paramiko库。我有办法用Fabric实现我想要的吗?
有可能。Connection.run
方法接受kwargs
,尤其是env
字典。这套环境变量将传递到您的SSH会话中。
注意:Connection.run
的文档非常少。但幸运的是,它包装了Invoke的run
方法(与大多数其他Fabric方法一样)。=>您可以看一下Invoke的run
方法here