Python subprocess.call(gunzip)没有为exdir获取变量

时间:2013-07-29 16:57:14

标签: django subprocess unzip

这就是我在做的事情:

pathToZip = '/it/is/right/here.zip'
pathToOut = '/I/would/like/that/right/here'
unzip = ('unzip', pathToZip, '-d', pathToOut)
p = subprocess.call(unzip)

不起作用,print p返回2.但是,这个:

unzip = ('unzip', pathToZip, '-d', '/I/would/like/that/right/here')

作品。

我错过了帮助/手册中的简单内容?

1 个答案:

答案 0 :(得分:0)

我认为你的代码没有任何问题,即使我通常使用list而不是tuple作为参数。

现在最好的是在Python控制台上测试,你应该马上知道问题的根源。

zip文件的内容是否已存在于exdir中?在这种情况下,它会询问您是否要替换/覆盖该内容。您可以使用-o始终覆盖。

pathToZip = '/it/is/right/here.zip'
pathToOut = '/I/would/like/that/right/here'
unzip = ['unzip', '-o', pathToZip, '-d', pathToOut]
p = subprocess.call(unzip)