我想执行以下命令
ssconvert /data/sam.xls,/data/test.csv
我试过了
p = subprocess.Popen(["ssconvert", '/data/sam.xls','/data/test.csv'], stdout=subprocess.PIPE,shell=True)
out = p.communicate()
print"output", out
但它不起作用..我怎样才能解决这个问题?谢谢)):
答案 0 :(得分:0)
正确的命令不是ssconvert /data/sam.xls,/data/test.csv
。 It should be:ssconvert /data/sam.xls /data/test.csv
代替(注意:空格,而不是输入和输出文件名之间的逗号)。
如果您使用shell=True
,则应将该命令作为字符串传递。在这种情况下,无需使用shell=True
。如果shell=False
(默认),则每个命令行参数应作为单个列表项传递:
#!/usr/bin/env python
import subprocess
subprocess.check_call(['ssconvert', '/data/sam.xls', '/data/test.csv'])