blob: b1fa50ed900abf5f3b1dadaebb5ed17c61785d6b [file] [log] [blame]
Simon Stewartd342bea2019-08-10 19:49:57 +03001import os
2import sys
3import tarfile
4
5if __name__ == '__main__':
6 outdir = sys.argv[2]
7 if not os.path.exists(outdir):
8 os.makedirs(outdir)
9
10 tar = tarfile.open(sys.argv[1])
11 for member in tar.getmembers():
12 parts = member.name.split("/")
13 parts.pop(0)
14 if not len(parts):
15 continue
16
17 basepath = os.path.join(*parts)
18 basepath = os.path.normpath(basepath)
19 member.name = basepath
20
21 dir = os.path.join(outdir, os.path.dirname(basepath))
22 if not os.path.exists(dir):
23 os.makedirs(dir)
24
25 tar.extract(member, outdir)
26 tar.close()