Извлечение нескольких RAR / Zip файлов с помощью щелчка правой кнопкой мыши на командном файле - PullRequest
0 голосов
/ 21 апреля 2020

Я использую этот фрагмент кода для извлечения моих файлов cbr / cbz в папки. Так как у меня есть comi c, читатель открывает эти файлы по умолчанию. Я сделал этот пакетный файл и поместил его в shell:sendto, чтобы я мог щелкнуть правой кнопкой мыши файл cbr и извлечь его в новую папку там. Работает для одного файла за раз.

cd /d %~dp1

"C:\Program Files\WinRAR\WinRAR.exe" x %1 "%~n1\"

Работает для одного файла. Но я хотел бы выбрать 5-6 файлов в одной папке, щелкнуть по ним правой кнопкой мыши и выбрать команду «отправить в мой пакет» и извлечь все в указанные им папки c.

Итак, я сделал для него этот пакетный файл:

cd /d %~dp1

:start

"C:\Program Files\WinRAR\WinRAR.exe" x %1 "%~n1\"
SHIFT
if not "%1"=="" (goto :start)

pause

Но это не работает. Как я могу заставить мой командный файл распознавать файлы, которые я выбрал, щелкая правой кнопкой мыши?

Редактировать:

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

:start

"C:\Program Files\WinRAR\WinRAR.exe" x %1 "%~dp1%~n1\"
SHIFT
if not "%1"=="" (goto :start)

pause

1 Ответ

0 голосов
/ 21 апреля 2020

Я думаю, что получил, если у вас есть другое предложение, пожалуйста, скажите так.

for %%A in (%*) do "C:\Program Files\WinRAR\WinRAR.exe" x %%A "%%~dpA%%~nA\"
pause

Кажется, это помогает, надеюсь, я не получу никаких ошибок.

...