Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Как быстро распаковать все zip-архивы на компьютере?

 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Shitbox2



Joined: 28 Jun 2009
Posts: 2

Post (Separately) Posted: Sun Jun 28, 2009 16:11    Post subject: Как быстро распаковать все zip-архивы на компьютере? Reply with quote

Имеется 1000 папок, в каждой папке 10 zip-архивов (могут еще другие файлы лежать), в каждом архиве 1 файл. Файлы и папки имеют произвольные кириллические имена.
Как быстро распаковать все эти архивы, каждый в свою папку (сами архивы нужно удалить)?

Короче. Есть:
D:/Книги/Пушкин А.С./Евгений Онегин.zip/Евгений Онегин.fb2
Должно быть:
D:/Книги/Пушкин А.С./Евгений Онегин.fb2
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Sun Jun 28, 2009 17:25    Post subject: Reply with quote

Code:
@echo off&chcp 1251>nul
rem Распаковка всех .zip с последующим удалением
setlocal enableextensions
for /f "delims=" %%f in ('dir /b/s *.zip') do (
start /wait C:\Progra~1\WinRAR\WinRar.exe X -y -ibck "%%f" "%%~dpf\"&&del /Q "%%f"
)

Сохрани код в текстовый файл unzip-del.cmd
Помести в папку, с которой нужно начать, и запусти
Путь к WinRar.exe д.б. короткий, иначе у меня не работает


Last edited by Tol!k on Sun Jun 28, 2009 17:59; edited 1 time in total
Back to top
View user's profile Send private message
Shitbox2



Joined: 28 Jun 2009
Posts: 2

Post (Separately) Posted: Sun Jun 28, 2009 17:53    Post subject: Reply with quote

Спасибо, помогло!
Длинный путь к WinRAR у меня, кстати, тоже не работал
Back to top
View user's profile Send private message
Sclever1227



Joined: 01 Nov 2020
Posts: 3

Post (Separately) Posted: Sun Nov 01, 2020 01:49    Post subject: Reply with quote

А не подскажете, как сделать, чтобы он каждый архив распаковывал в папку с именем архива, а потом удалял исходный архив?
То есть
1.zip
2.zip
3.zip
и так далее, он распаковал в папки:
1
2
3
И при этом удалил 1.zip 2.zip и т.д.?
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10236
Location: Россия, Саратов

Post (Separately) Posted: Sun Nov 01, 2020 08:45    Post subject: Reply with quote

Sclever1227
Научитесь пользоваться поиском по форуму. Ссылка на скрипт. Дополнительные подробности — в памятке подфорума и самой теме с указанным сообщением. А двумя действиями это можно сделать без автоматизации: в стандартном диалоге TC есть опция для распаковки каждого архива в отдельный каталог, ненужные архивы потом можно удалить и ручками.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Sclever1227



Joined: 01 Nov 2020
Posts: 3

Post (Separately) Posted: Sun Nov 01, 2020 17:31    Post subject: Reply with quote

Я просто не очень разбираюсь в этом.
В "Ссылке на скрипт" сохраняю все как .bat, но ничего не работает Sad
Просто мигает командная строка, и закрывается.
А в примере из данного топика, все работает, только он распаковывает архивы не с именем архива, а сразу содержимое распаковывает.

Добавлено спустя 1 час 40 минут:

Tol!k wrote:
Code:
@echo off&chcp 1251>nul
rem Распаковка всех .zip с последующим удалением
setlocal enableextensions
for /f "delims=" %%f in ('dir /b/s *.zip') do (
start /wait C:\Progra~1\WinRAR\WinRar.exe X -y -ibck "%%f" "%%~dpf\"&&del /Q "%%f"
)

Сохрани код в текстовый файл unzip-del.cmd
Помести в папку, с которой нужно начать, и запусти
Путь к WinRar.exe д.б. короткий, иначе у меня не работает


У меня работает этот батник, единственное, что мне надо, чтобы архивы распаковывались в папки с именем архива, а не просто все вложенные файлы распаковывались из архива.
Помогите, кто разбирается Sad
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10236
Location: Россия, Саратов

Post (Separately) Posted: Sun Nov 01, 2020 21:20    Post subject: Reply with quote

Sclever1227
Разумеется, не работает, потому что скрипт — не батник, а памятку, где это сказано, вы не читаете. Нормально сделайте то, что уже сказано.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Sclever1227



Joined: 01 Nov 2020
Posts: 3

Post (Separately) Posted: Sun Nov 01, 2020 22:01    Post subject: Reply with quote

Avada wrote:
Sclever1227
Разумеется, не работает, потому что скрипт — не батник, а , где это сказано, вы не читаете. Нормально сделайте то, что уже сказано.


Я понял про памятку, но как поправить батник? Что я выше привел. Не могу просто с ключами команд разобраться. Справку по винрару курил, но не особо помогло. По сути в батнике надо поправить только то, чтобы он распаковывал архивы в папки, и присваивал им имя архива, а сам архив удалял.
Заранее спасибо за ответ.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10236
Location: Россия, Саратов

Post (Separately) Posted: Mon Nov 02, 2020 06:55    Post subject: Reply with quote

Sclever1227
Как поправить батник, вам будут отвечать (возможно) другие, я не специалист. Его автор на форуме иногда появляется (за последние три года — два раза). Ждите, если другие способы не устраивают.
И не надо цитировать всё подряд — ни пост с батником, ни мой ответ (это оверквотинг, запрещённый правилами форума): пользование кнопкой "цитата" предполагает, что сообщение потом редактируется. В данном же случае цитаты вообще не нужны (особенно с дублированием кода, раз вы пямятку читали).
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Monarch-LFV



Joined: 22 Jul 2019
Posts: 227

Post (Separately) Posted: Mon Nov 02, 2020 07:37    Post subject: Reply with quote

Sclever1227
сделал код проще:
Code:
@echo off
for /f "delims=" %%f in ('dir /b/s *.zip') do (
   "%COMMANDER_PATH%\Plugins\exe\WinRAR-x64\WinRAR.exe" X "%%f" "%%~dpnf\"  && del /Q "%%f"
)


Также сохранить в батнике, указать свой путь до Winrar (у меня он всегда в ТС).
Если быть точнее в прошлом батнике автор кода забыл проставить имя файла архива %%~dpnf\
Back to top
View user's profile Send private message
Monarch-LFV



Joined: 22 Jul 2019
Posts: 227

Post (Separately) Posted: Wed Dec 23, 2020 10:03    Post subject: Reply with quote

Мало ли кому понадобится, подправил батники для удобной распаковки выделенных файлов архивов (и архивов с любыми другими расширениями, например docx, xlsx, pptx и т.п.). Само собой нужно прописать правильный путь до Winrar и в параметрах кнопок выставить %P%S (Версия Winrar должна быть не меньше 5.70, так как только в ней появился параметр -ad1). Работают правильно и в Branch view.
Батники:
1. Распаковать выделенные архивы в одноименные папки:
Code:
@echo off
setlocal enableextensions
for %%f in (%*) do (
   "%COMMANDER_PATH%\Plugins\exe\WinRAR-x64\WinRAR.exe" x -ad1 -ibck %%f
)

2. Распаковать выделенные архивы в одноименные папки и удалить архивы:
Code:
@echo off
setlocal enableextensions
for %%f in (%*) do (
   "%COMMANDER_PATH%\Plugins\exe\WinRAR-x64\WinRAR.exe" x -ad1 -ibck %%f && del /Q %%f
)
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group