Хочу разобраться с файловым хранилищем, удалить дубликаты файлов. Написал программу обходящую дерево директорий. Застрял на этапе вычисления хэшей, дело в том, что имена файлов содержат не только алфавитные символы и цифры, а также пробелы и спецсимволы. Сначала Python останавливался на первом же проблемном файле, позже я дописал try / except, и теперь он доходит до конца, пропуская проблемные файлы, но меня это не устраивает!
Язык: Python 3
CODE (text):
скопировать код в буфер обмена
скопировать код в буфер обмена
- #! /usr/bin/env python3
- import subprocess
- try:
- hash = subprocess.check_output('md5sum -- "{}"'.format(file), universal_newlines=True, shell=True)[:32]
- except Exception:
- print('Проблемный файл {}'.format(file))