我想执行以下命令:
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但这不管用。
我怎样才能解决这个问题?
发布于 2015-12-18 12:14:53
这是可行的
import subprocess
subprocess.call(["ssconvert","sample.xlsx","sample.csv"],cwd="pathtoyourfile") # pathtoyourfile must contain the xlsx and csv files发布于 2015-11-25 09:50:26
正确的命令不是ssconvert /data/sam.xls,/data/test.csv。它应该是: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'])https://stackoverflow.com/questions/33910349
复制相似问题