как проверить md5hash каталога и сравнить его с файлом, который содержит хэш всех файлов, отправленных в каталог назначения - PullRequest
0 голосов
/ 28 апреля 2018

Моя цель - проверить, какие файлы я скопировал в целевой каталог, а какие нет, создав файл, который будет хранить хэш файлов, которые я скопировал в целевой каталог. Если хеш исходного каталога не совпадает с хешами внутри файла, который содержит все хэши файла, который был скопирован, скопируйте файл в целевой каталог и добавьте новый хеш в файл, содержащий все хэши. файлов, которые были скопированы в каталог назначения.

src_dir = / исходный_каталог dest_dir = / целевой_каталог hashofall = текстовый файл, в котором хэш хранятся все файлы, которые были скопированы в $ dest_dir

md5hash $ src_dir / * # сравнить этот хеш с $ hashofall если совпадение не копирует файл в $ src_dir если не совпадает, скопируйте файл в $ dest_dir и сохраните md5hash в $ hashofall из тех, что только что скопированы в linux.

Цель этого - проверить, какие из новых файлов я не скопировал.

1 Ответ

0 голосов
/ 28 апреля 2018

Вы можете попробовать простой diff dir1 dir2, но если для вас этого недостаточно, попробуйте что-то вроде этого:

hashes_src=$(cd $srcDir ; find  . -type f -exec md5sum {} \; | sort)
hashes_src=$(cd $dstDir ; find  . -type f -exec md5sum {} \; | sort)
comm -23 <(echo $hashes_src) <(echo hashes_dst)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...