我的公司写了一个应用程序(一个创建CloudFormation模板的小应用程序)并传递了二进制文件供所有团队使用。Python封装将参数传递给bash
在试图自动化这一点,我写了一个Python脚本,基本上传递参数到Bash/Shell命令。这是一个包装,所以我只是做这个,所以我可以遍历一堆配置文件来在AWS中创建CloudFormation堆栈。
壳,我会做
cfapp cfn create -p Namespace=namespace -p Env=env -p Team=team -p Region=region --spec-file file://partner/foobar.yaml
我用Python写的,但我得到一个语法错误:
os.system("cfapp cfn create -p Pool=%s" % pool "-p Namespace=%s" % namespace "-p Env=%s" % env "-p Team=%s" % team "-r %s" % region "--spec-file file://partner/"+str(config)+".yaml") time.sleep(5)
我看,这是如何通过做python虽然,obv,我的实现是错误的。
只使用百分之一和组参数一起在'元组'在字符串的末尾......更好:使用具有参数列表的'subprocess'模块,不要尝试自己创建命令行。 –
ah'tuple'很有意义 - 谢谢@ Jean-FrançoisFabre –
不知道我是否错过了一些东西,但是有没有理由不使用所有bash? – grail