Показать полную графическую версию : [решено] Winrar авто разархивирование
RodionRuRu
06-06-2013, 15:06
Я вот прочитал тему - http://forum.oszone.net/nextoldesttothread-240280.html
И взял от туда такой скрипт -
@echo off
SET WinRarPath="%ProgramFiles%\WinRAR\WinRAR.exe"
start /wait "" %WinRarPath% X *.rar
И он распоковывает все что лежит в архиве и то что в папках, а мне нужно что бы он саму папку перенес. Что делать?
RodionRuRu, ещё раз и, пожалуйста, по-русски.
«и то что в папках» — о каких папках речь? «саму папку перенес» — о какой папке речь? Куда «перенёс»?
RodionRuRu
06-06-2013, 15:13
Ну папка в архиве, а когда разархивирует через .bat , папки которые в архиве winrar, в папке которая в архиве, файлы, папка исчезает а файлы переносится, а мне нужна что бы сама папка переносилась а не исчезала.
RodionRuRu, я же просил — по-русски. Сожалею.
Можете попробовать объяснить на конкретном примере — содержимое архива, что происходит, и как бы хотелось.
RodionRuRu
08-06-2013, 19:51
Вся суть тут скрины и текст - http://imgur.com/SO5vMsL,Wl2X0vP,zKFvCgJ,KfdT9am,SbpEHsk#0 5 изображений!
RodionRuRu
09-06-2013, 02:24
Iska, так поможешь?
RodionRuRu, Ваши картинки, равно как и Ваша речь, для меня непонятны. Сожалею.
RodionRuRu, как и коллега Iska, я также абсолютно ничего не понял, но знаю, что большинству польэователей нужно, чтобы каждый архив был разпакован в одноимённую папку.
Я уже давно не пользуюсь WinRAR (использую другие архиваторы и распаковщики), поэтому я не помню все его консольные команды, но попробуйте такой скрипт (может, можно было и проще), хуже не будет:
@ECHO OFF
FOR %%I IN (*.rar) DO (
"%ProgramFiles%\WinRAR\WinRAR.exe" X "%%~I" *.* "%%~nI\"
)
Запускать нужно из папки со всеми RAR-архивами, которые нужно распаковать.
RodionRuRu
09-06-2013, 12:42
Спасибо, помогло!
Сначала такой код будет задействован:
@echo off
SET WinRarPath="%ProgramFiles%\WinRAR\WinRAR.exe"
start /wait "" %WinRarPath% X *.rar
Он распакововает с 1 архива все архивы в нем в папку где находится архив!
А это:
@ECHO OFF
FOR %%I IN (*.rar) DO (
"%ProgramFiles%\WinRAR\WinRAR.exe" X "%%~I" *.* "%%~nI\"
)
Все те архивы которые распоковались с 1 делает названия архивов и заменяет старые файлы! Nice!
Хм, а как сделать что бы она файл перезаписывала еще. Ото она пропускает)
Господи…
RodionRuRu, освойте словосочетание «вложенные архивы».
RodionRuRu
09-06-2013, 19:17
Так он уже распакованные файлы пропускает а как сделать что бы перезаписовал.
RodionRuRu, попробуйте ключ -y, по-моему, идущий сразу за командой X:
@ECHO OFF
FOR %%I IN (*.rar) DO (
"%ProgramFiles%\WinRAR\WinRAR.exe" X -y "%%~I" *.* "%%~nI\"
)
RodionRuRu
10-06-2013, 14:27
Спасибо, получилось! Все даже легче чем я думал)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.