如何使用子进程在python中解压缩gz文件

时间:2016-11-10 14:19:51

标签: python linux debian subprocess gzip

我不知道如何使用子进程在python中解压缩gz文件。

gzip库是如此之慢,我想使用gnu / linux shell代码和子进程库来实现上述相同的功能。

def __unzipGz(filePath):
  import gzip

  inputFile   =   gzip.GzipFile(filePath, 'rb')
  stream      =   inputFile.read()
  inputFile.close()

  outputFile  =   file(os.path.splitext(filePath)[0], 'wb')
  outputFile.write(stream)
  outputFile.close()

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容:

import subprocess

filename = "some.gunzip.file.tar.gz"
output = subprocess.Popen(['tar', '-xzf', filename])

由于此处没有太多有用的输出,您也可以使用os.system代替subprocess.Popen,如下所示:

import os

filename = "some.gunzip.file.tar.gz"
exit_code = os.system("tar -xzf {}".format(filename))