На этот вопрос уже есть ответ здесь:
В терминале легко найти md5sum одного файла, но как насчет целого каталога? И применимо ли то же самое к sha256sum?
Этот небольшой сценарий сделает sha512sums папки и всех ее подпапок и сохранит его в файл, названный sha512checksums:
#!/bin/bash
rm -f sha512checksums
find -type f ! -iname "sha512checksums" -exec sha512sum "{}" + > sha512checksums
И этот после документа на получение позволяет Вам проверить суммы на основе перед созданным файлом:
#!/bin/bash
rm -f sha512errors
sha512sum -c sha512checksums 2> sha512errors 1>/dev/null
if [ -s sha512errors ]
then
echo The following errors where found while checking:
more sha512errors
rm -f sha512errors
else
echo All files are ok.
rm -f sha512errors
fi
То же будет работать также на любой алгоритм создания суммы, только необходимо было бы изменить сценарии.