Я думаю о разработке обычного инструмента слияния каталогов / папок как части обучения функциональному программированию, а также для устранения очень личного зуда.
Я обычно работаю на трех разных компьютерах и склонен накапливать многофайлов (текст, видео, аудио) локально, а затем тщательно объединить их для целей резервного копирования.Я почти уверен, что у меня есть дуплисы и ненужные файлы, которые тратятся впустую.Я перехожу к облачному резервному копированию в качестве вторичного источника резервного копирования и хочу сэкономить как можно больше места за счет исключения избыточных файлов.
У меня сложная структура каталогов с глубоким вложением, и мне нужен автоматический инструмент, который автоматическиидет вниз по дереву папок и выполняет слияние.Другая проблема заключается в том, что я использую сочетание Linux и Windows, и во многих моих файлах есть пробелы в имени ...
Первоначально я думал, что мне нужно генерировать хэши для каждого файла и сравнивать их, а неимена файлов (пробелы в имени папки, а также содержимое файлов могут различаться в зависимости от источника и цели).Является ли RIPEMD-160 хорошим балансом между производительностью и предотвращением столкновений?или достаточно SHA-1?Является ли SHA-256/512 избыточным?
Какая функциональная среда программирования поставляется с набором готовых библиотек для генерации этих хешей?Я склоняюсь к OCaml ...