Добавить комментарий к архиву WinRar с пакетным файлом

Добавить комментарий к архиву WinRar с пакетным файлом

При использовании Winrar у нас есть возможность добавлять комментарии к архиву. Я использую простой пакетный скрипт для резервного копирования папки. Есть ли способ добавить комментарии к архиву rar с помощью пакетного файла?

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

Это пакетный файл.

@echo off
"C:\Program Files\WinRAR\Rar.exe" -r  a -agYYYY-MM-DD-HH-MM "C:\Folder" "B:\Archive" -ep1 -r -m5
pause

Он заархивирует все из C:\Folder в B:\Archive

решение1

Вероятно, проще всего сделать это с помощью файла, но вы можете просто сгенерировать его на лету. Пример может выглядеть так:

@echo off
SET /P comment=Comment:
echo %comment% > C:\Temp\message.txt
rar.exe a -zC:\Temp\message.txt "test.rar" "C:\TestFiles"
del C:\Temp\message.txt
pause

решение2

SET /P comment=Comment: seems to need a manual Enter-press, otherwise the command just waits...

Пытаясь решить эту проблему для вас всех... я застрял.

Поэтому я придумал другое решение, которое проще и работает так же хорошо, если не лучше?

@echo off
echo Winrar Incremental Wallets Backup E: > C:\Temp\winrar.message.E.txt

Запустите команду rar, добавив следующую опцию:-zC:\Temp\winrar.message.E.txt

А чтобы все было чисто, вы можете завершить пакетный файл следующим образом:

del /F /Q C:\Temp\winrar.message.E.txt

Это было все мое решение.

У меня Windows 2019, и я просто не могу заставить SET /P работать правильно (или я слишком тупой)*

  • Что касается SET /P и почему у меня это не получается... Я понятия не имею, и если вы что-то знаете, дайте мне знать. Эта статья была очень интересной, но даже она не сработала у меня (https://www.robvanderwoude.com/battech_inputvalidation_setp.php). Код, который он дал:

    SETLOCAL EnableDelayedExpansion SET /P var="Введите здесь что угодно:" ECHO .!var!. ECHO удалите кавычки: .!var:"=!. REM Если вы действительно хотите отклонить переменную с любыми кавычками... ECHO !var! | FIND """" >NUL && SET var= REM Вот и все.

Я также пробовал: SET /P comment=Comment: < nulпропустить обязательное нажатие Enter, но без способа использовать SET /P (моим), я не могу сказать, что это могло бы исправить изначальное решение с нажатием Enter. Основная проблема с SET /PI заключается в том, что такие вещи, как ECHO .!var!., ECHO !var!, ECHO %comment%и даже ECHO %%comment%%фактически не дали никаких результатов. Переменные не установлены. Только когда я вручную ввожу строку комментария, я могу получить результаты. В противном случае это беспорядок :)

Связанный контент