BLAKE (хэш-функция): https://blake2.net/

Загрузить: https://blake2.net/b2sum-bin_20130305.zip

Текущая команда b2sum-amd64-windows не включает рекурсивную опцию

Например, в командной строке Windows:

C:\Users\ Имя> b2sum-amd64-windows.exe -a blake2sp "G:\ Program Files\ Techland\ Dying Light *. *"

Не удалось открыть G:\Program Files\Techland\Dying Light\DW': Permission denied Could not open G:\Program Files\Techland\Dying Light\DW_DLC1': разрешение отклонено

дайджест сообщения G:\Program Files\Techland\Dying Light\239140_install.vdf

дайджест сообщения G:\Program Files\Techland\Dying Light\bink2w64.dll

1 ответ1

0

Во-первых, спасибо. Я не знал инструмент.

Ошибки в выводе вызваны тем, что инструмент пытается открыть папку, как если бы это был файл

Вам нужно будет перебрать структуру папок, вызывая инструмент для содержимого каждой папки

for /r "G:\Program Files\Techland\Dying Light" /d %a in (.) do b2sum-amd64-windows.exe -a blake2sp "%~fa\*" 2>nul 

Команда for будет возвращать (/r) из указанной точки в поисках каталогов (/d). Для каждой найденной папки for заменяемого параметра %a будет содержаться ссылка на него. Используя эту ссылку, мы будем использовать полный путь к папке (%~fa), чтобы запустить инструмент для файлов (и папок, без возможности их разделения) внутри. Ошибки отправляются в stderr, поэтому мы перенаправляем этот поток (2) на устройство nul, чтобы скрыть их.

Чтобы использовать эту команду из пакетного файла, необходимо экранировать знаки процента, заменяя каждый % на %% , поэтому вы заканчиваете %%a и %%~fa

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .