You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 lines
679 B

import hashlib
import os
import sys
def main():
filenames, hashes, sizes = [], [], []
for file in sys.argv[1:]:
if not os.path.isfile(file):
continue
with open(file, 'rb') as f:
data = f.read()
md5 = hashlib.md5()
md5.update(data)
filenames.append(os.path.split(file)[1])
hashes.append(md5.hexdigest())
sizes.append(str(len(data)))
print('{:40s} {:<32s} {:<9s}'.format('File', 'MD5', 'Size'))
for f, h, s in zip(filenames, hashes, sizes):
print('{:40s} {:>32s} {:>9s}'.format(f, h, s))
if __name__ == "__main__":
sys.exit(int(main() or 0))