Udev и systemd будут разбиты, любая помощь будет оценена

Вот еще два обширных примера:

Создайте файл md5 в каждом каталоге, который еще не имеет одного, с абсолютными путями:
find "$PWD" -type d | sort | while read dir; do [ ! -f "${dir}"/@md5Sum.md5 ] && echo "Processing " "${dir}" || echo "Skipped " "${dir}" " @md5Sum.md5 already present" ; [ ! -f "${dir}"/@md5Sum.md5 ] &&  md5sum "${dir}"/* > "${dir}"/@md5Sum.md5 ; chmod a=r "${dir}"/@md5Sum.md5;done 
Создайте файл md5 в каждой папке, уже есть один: нет путей, только имена файлов:
find "$PWD" -type d | sort | while read dir; do cd "${dir}"; [ ! -f @md5Sum.md5 ] && echo "Processing " "${dir}" || echo "Skipped " "${dir}" " @md5Sum.md5 allready present" ; [ ! -f @md5Sum.md5 ] &&  md5sum * > @md5Sum.md5 ; chmod a=r "${dir}"/@md5Sum.md5 ;done 

Что отличается от 1 до 2, так это то, как файлы представлены в полученном файле md5.

Команды выполняют следующее:

Создайте файл md5 в каждой директории, у которой его еще нет, с абсолютными путями:
find "$PWD" -type d | sort | while read dir; do [ ! -f "${dir}"/@md5Sum.md5 ] && echo "Processing " "${dir}" || echo "Skipped " "${dir}" " @md5Sum.md5 already present" ; [ ! -f "${dir}"/@md5Sum.md5 ] &&  md5sum "${dir}"/* > "${dir}"/@md5Sum.md5 ; chmod a=r "${dir}"/@md5Sum.md5;done 
Сортировка списка папок. Создайте файл md5 в каждой папке, которая еще не имеет одного: нет путей, только имена файлов:
find "$PWD" -type d | sort | while read dir; do cd "${dir}"; [ ! -f @md5Sum.md5 ] && echo "Processing " "${dir}" || echo "Skipped " "${dir}" " @md5Sum.md5 allready present" ; [ ! -f @md5Sum.md5 ] &&  md5sum * > @md5Sum.md5 ; chmod a=r "${dir}"/@md5Sum.md5 ;done 
Если файл @ md5Sum.md5 не существует, md5Sum будет генерировать один с контрольными суммами всех файлов в папке. 5) Установите сгенерированный файл @ md5Sum.md5 только для чтения.

Вывод всего этого скрипта можно перенаправить в файл (.....; done> test.log) или передать в другую программу (например, grep). На выходе будут указаны только те каталоги, в которых они пропущены и которые были обработаны.

После успешного запуска вы получите файл @ md5Sum.md5 в каждом подкаталоге вашего текущего каталога

Я назвал файл @ md5Sum.md5, поэтому он будет указан в верхней части каталога в share samba.

Проверка всех файлов @ md5Sum.md5 может быть выполнена следующими командами:

find "$PWD" -name @md5Sum.md5 | sort | while read file; do cd "${file%/*}"; md5sum -c @md5Sum.md5; done > checklog.txt

После этого вы можете grep checklog.txt с помощью grep -v OK, чтобы получить список всех файлов, которые отличаются.

Чтобы регенерировать @ md5Sum.md5 в определенном Если вы изменили или добавили файлы, например, либо удалите файл @ md5Sum.md5, либо переименуйте его и снова запустите команду generate.

1
задан 25 March 2015 в 21:50

0 ответов

Другие вопросы по тегам:

Похожие вопросы: