Создать пакет для архивирования файлов, используя имя основной папки в качестве имени архива

Я пытаюсь создать пакетный файл и нигде не могу найти решение в Интернете. Я хотел бы заархивировать (Winrar) папку и подпапки (например, папку A в C:\Temp\A). Папка A содержит кучу подпапок и файлов.

Я использую эту команду:

"C:\Program Files\WinRAR\WinRAR.exe" a -esh -m5 -mt2 -r -s -t "ZZZZ.rar" 

Проблема в том, что я бы хотел, чтобы архив назывался так же, как имя основной папки (в данном случае папка "А" - A.rar), а архив отправлялся в папку C:\Temp (на один уровень выше).


person Jovica Bozic    schedule 29.08.2013    source источник


Ответы (2)


У меня нет WinRAR, поэтому я не могу проверить синтаксис команды rar, но вы можете создать пакетный файл (backup.bat), например:

cd %1
"C:\Program Files\WinRAR\WinRAR.exe" a -esh -m5 -mt2 -r -s -t "..\%1.rar"
cd ..

И вызвать его с помощью

backup A

из папки temp. Это может быть началом...

person Pruyque    schedule 29.08.2013
comment
Пакетный файл находится в папке A, потому что у меня есть куча папок, которые нужно заархивировать в папке Temp. Используя вашу команду, я получаю архив там, где он должен быть, но имя архива .rar (у архива нет имени). - person Jovica Bozic; 30.08.2013
comment
Может быть, это проблема: я получаю, что система не может найти указанный путь, когда я пытаюсь cd% 1 в CMD - person Jovica Bozic; 30.08.2013

@echo off ( CD\ C: cd "Temp\A" ) "%programfiles%\winrar\rar" a -r "C:\ZZZZ.rar"

person Abhay    schedule 28.02.2014