我有一個shell命令我需要發送一個多維數組作爲參數。python 3如何發送multidimentional陣列數據到一個subprocess.call()
subprocess.call(['rndc', 'addzone', domain, 'in', 'external', '"{type master; auto-dnssec maintain; inline-signing yes; key-directory \"/home/ex-mailer-domains/domain.com/\"; file \"/home/ex-mailer-domains/domain.com/domain.com.external\"; update-policy { grant ddns-key zonesub ANY; };};"'
subprocess.call(['rndc', 'loadkeys', domain])
我收到的錯誤:在shell
[\[email protected]:/usr/local/etc/namedb] # python3.4 makedomain3.py mylabel domain.com 108.61.169.203 255.255.254.0 2001:19f0:5800:8561:5400:00ff:fe07:cae5 1
File "makecustdomain3.py", line 249
subprocess.call(['rndc', 'loadkeys', domain])
^
SyntaxError: invalid syntax
實際的命令:
rndc addzone domain.com in external '{type master; auto-dnssec maintain; inline-signing yes; key-directory "/home/ex-mailer-domains/domain.com/"; file "/home/ex-mailer-domains/nyctelecomm2.com/domain.com.external"; update-policy { grant ddns-key zonesub ANY; };};'
rndc loadkeys domain.com
你如何正確多維數組的數據作爲參數傳遞給subprocess.call( )在python3?
「多維數組」是不相關的在這裏從你的例子,它只是一個字符串 – Eric