I've got a huge *.tar.gz file and I want to see the list of files contained in it without extracting the contents (preferably with mtimes per file). How can I achieve that in python?
            Asked
            
        
        
            Active
            
        
            Viewed 4,395 times
        
    1 Answers
7
            You can use TarFile.getnames() like this:
#!/usr/bin/env python3
import tarfile
tarf = tarfile.open('foo.tar.gz', 'r:gz')
print(tarf.getnames())
http://docs.python.org/3.3/library/tarfile.html#tarfile.TarFile.getnames
And if you want mtime values you can use getmembers().
print([(member.name, member.mtime) for member in tarf.getmembers()])
 
    
    
        mgbelisle
        
- 571
- 5
- 8
- 
                    Thank you and sorry it was my inattentiveness to not check tarfile description, since I did look at that doc page. :) – Denys S. Oct 30 '13 at 13:25
- 
                    
 
    