我的公司寫了一個應用程序(一個創建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