Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Распаковка ВСЕХ архивов в папку с тем же именем

Ответить
Настройки темы
CMD/BAT - Распаковка ВСЕХ архивов в папку с тем же именем

Новый участник


Сообщения: 34
Благодарности: 0


Конфигурация

Профиль | Отправить PM | Цитировать


Собственно есть папка, в ней дофига других папок с раскиданными файлами и архивами в произвольном порядке....
Хотелось бы распаковать абсолютно ВСЕ архивы рядом (т.е. в папки с именами как у архивов) и автом.подтверждать замену имеющихся файлов и потом удалить архивы после распаковки
Желательно базировать на одном каком-то ехе-шнике (winrar или 7z)

Попробовал поиграться с этим кодом, но простые переименование маски архива не помогло

Отправлено: 18:16, 19-09-2013

 

Старожил


Сообщения: 352
Благодарности: 119

Профиль | Отправить PM | Цитировать


"Рекурсивная распаковка" http://forum.wincmd.ru/viewtopic.php?t=14064

Последний раз редактировалось kiripanda, 19-09-2013 в 23:22.


Отправлено: 23:14, 19-09-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Новый участник


Сообщения: 34
Благодарности: 0

Профиль | Отправить PM | Цитировать


kiripanda, так это же скрипт для Тотала..

Отправлено: 00:32, 20-09-2013 | #3


Старожил


Сообщения: 352
Благодарности: 119

Профиль | Отправить PM | Цитировать


%L – это файл-список элементов по одному на строку

Отправлено: 01:49, 20-09-2013 | #4


Аватара для FreePaul

Новый участник


Сообщения: 19
Благодарности: 3

Профиль | Отправить PM | Цитировать


Цитата death7lord:
Цитата:
Собственно есть папка, в ней дофига других папок с раскиданными файлами и архивами в произвольном порядке....
Хотелось бы распаковать абсолютно ВСЕ архивы рядом (т.е. в папки с именами как у архивов) и автом.подтверждать замену имеющихся файлов и потом удалить архивы после распаковки
Желательно базировать на одном каком-то ехе-шнике (winrar или 7z)
Попробовал поиграться с этим кодом, но простые переименование маски архива не помогло »
ИМХО, автоматически подтверждать перезапись не придется, т.к. если все архивы с уникальными именами применительно к содержащей их папке и согласно условиям будут распаковываться так же в содержащую их папку, то и имена создаваемых папок, совпадающих с именами архивов, не приведут к конфликтам имен файлов.

Относительно задачи. Сейчас попробовал у себя на Win7 x86 + WnRAR 4.20. В папке, содержащей кучу подпапок с архивами, стандартными средствами Проводника Windows выполнил поиск по маске *.zip. После этого: Выделить все -> ПКМ -> WinRAR -> Извлечь каждый архив в отдельную папку.

То же можно повторить и по маске *.rar.

7zip у меня не установлен, но кажется, у него такое же меню появляется.

Пойдет?

P.S.
Кстати, подобным же образом можно распаковать все архивы из кучи папок в одну папку. Просто откройте второе окно проводника, создайте новую папку, откройте ее и перетяните ПКМ выделенные в поиске архивы в открытую новую папку. Появится всплывающее меню, содержащее такие же операции WinRAR (7zip)...

-------
Шёл, шёл, шёл...


Последний раз редактировалось FreePaul, 20-09-2013 в 02:55.


Отправлено: 02:50, 20-09-2013 | #5


Новый участник


Сообщения: 34
Благодарности: 0

Профиль | Отправить PM | Цитировать


kiripanda, путь исправил на свой, но нифига не получилось...
да и там вроде в самом тотате надо что-то донастраивать...

Отправлено: 14:03, 20-09-2013 | #6


Ветеран


Сообщения: 1754
Благодарности: 965

Профиль | Цитировать


death7lord,
Код: Выделить весь код
@echo off
setlocal

set "path=%path%;%programfiles%\7-zip"

pushd "C:\Your Start Folder" || goto:eof
for /f "tokens=*" %%i in ('dir /b /s /a *.zip *.rar *.7z') do (

	7z x "%%i" -o"%%~dpni" -aoa

)
popd
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:41, 21-09-2013 | #7


Новый участник


Сообщения: 34
Благодарности: 0

Профиль | Отправить PM | Цитировать


Foreigner, только смог проверить, работает, НО не удаляет после распаковки архивы
наперед уточню - удалять распакованные архивы, а не все подряд, т.к. сами архивы тоже могу содержать архивы %)

Отправлено: 14:12, 05-10-2013 | #8


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


death7lord, Вам сложно самому добавить «&& del /f /q "%%i"» в строку с извлечением файлов?
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:16, 05-10-2013 | #9


Аватара для Grabber2006

Ветеран


Сообщения: 4443
Благодарности: 980

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@echo off
setlocal

set "path=%path%;%programfiles%\7-zip"

pushd "C:\Your Start Folder" || goto:eof
for /f "tokens=*" %%i in ('dir /b /s /a *.zip *.rar *.7z') do (

	7z x "%%i" -o"%%~dpni" -aoa

)
popd
Что надо изменить в строчке -o"%%~dpni", чтобы архивы распаковывались в папку с архивом, а не в отдельную папку с именем архива?

----------------------

Уже всё, разобрался. Надо убрать букву n, чтобы было так: -o"%%~dpi"

Последний раз редактировалось Grabber2006, 11-01-2020 в 16:11.

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:21, 11-01-2020 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Распаковка ВСЕХ архивов в папку с тем же именем

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] распаковка архивов по нужным папкам muguch Скриптовые языки администрирования Windows 28 14-09-2012 11:13
Разное - РАСПАКОВКА АРХИВОВ MZ (ОПК 3.19) Vamp1re Тест-форум 0 13-12-2010 15:03
CMD/BAT - [решено] Удаление всех файлов с одним именем на всех дисках ZARG-X Скриптовые языки администрирования Windows 3 08-03-2010 11:53
восстановление excel-файла, затертого другим файлом с тем же именем XPurple Хочу все знать 4 03-01-2006 13:47
распаковка больших архивов greeka Общий по FreeBSD 7 19-07-2004 09:21




 
Переход