将变量传递给 Fabric?

Passing a Variable to Fabric?

试图弄清楚如何将变量传递给 fabric 但遇到问题:

def installpatch(install):
sudo("apt-get install %s") % install

然而,当试图通过 CLI 执行此操作时,它显示如下:

user@linux: fab installpatch:vi
Fatal error: sudo() received nonzero return code 100 while executing!
Requested: apt-get install %s
Executed: sudo -S -p 'sudo password:' /bin/bash -l -c "apt-get install %s"

输入为

fab installpatch:'vi'

没有区别。有什么建议么?我假设我只是错过了一些超级简单的东西。

目标:能够创建允许我向其传递 variable/name 以在多台 PC 上安装特定软件的结构命令。

尝试以下操作:

sudo(("apt-get install %s") % install)

sudo("apt-get install {}".format(install))

您问题中的 % 运算符仅在与字符串组合时有效。