LINUX.ORG.RU

BASH


0

0

Хочу в целях изучения BASH написать небольшой скрипт для определения
дубликатных файлов в файловой системе с помощью подсчета контрольной суммы,
например с помощью md5 (md5sum). 

Пишу следующее:

md5sum `find . -type f` > md5.txt

При работе с большими по числу файлов каталогами выдает сообщение, 
что список аргументов слишком велик. 

Хотел написать так:

find . -type f | md5sum > md5.txt

В результате в текстовый файл пишет вот что:

<ключ> -


Вопросы:

1. Как заставить работать md5sum на многочисленном списке файлов

2. Не вносит ли в значение формируемого ключа md5sum еще и временную 
   составляющую в результате чего я никогда не найду 2 одинаковых файла ;-) ?

find . -type f -exec md5sum {} \; > md5.txt

md5sum смотрит только на содержимое файла. ни на время, ни даже на имя файла он не смотрит

friday ★★★
()
Ответ на: комментарий от friday

Я еще попробовал вот как:

find . -type f | xargs md5sum > md5sum.txt

Одно плохо: имена с пробелами не обрабатываются корректно.

Как тут быть ?

gtyrin
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.