aboutsummaryrefslogtreecommitdiffstats
path: root/tests/tarsum.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/tarsum.py')
-rwxr-xr-xtests/tarsum.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/tarsum.py b/tests/tarsum.py
new file mode 100755
index 0000000..23d397d
--- /dev/null
+++ b/tests/tarsum.py
@@ -0,0 +1,25 @@
+#!/usr/bin/python
+"""
+From: https://gist.github.com/DaveCTurner/8765561
+
+Modified to print with an extra space between fields
+"""
+
+import sys
+import tarfile
+import hashlib
+
+for filename in sys.argv[1:]:
+ print filename
+ with tarfile.open(filename, 'r') as tar:
+ for tarinfo in tar:
+ if tarinfo.isreg():
+ flo = tar.extractfile(tarinfo) # NB doesn't really extract the file, just gives you a stream (file-like-object) for reading it
+ hash = hashlib.sha1()
+ while True:
+ data = flo.read(2**20)
+ if not data:
+ break
+ hash.update(data)
+ flo.close()
+ print hash.hexdigest(), '', tarinfo.name