MVV

|
Posted: Thu Feb 11, 2010 15:17 Post subject: |
|
|
Перечислитель вроде работает, поэтому говорим о репакере.
- распаковать в папку ~~~%1
- переименовать %1 в %1.~~~
- запаковать содержимое папки ~~~%1 в файл %1
- удалить папку ~~~%1 и файл %1.~~~
В общем,
Code: | @echo off
if -%1==- goto exit
"C:\Program Files\7-Zip\7z.exe" x -o~~tmp~~ %1
if errorlevel 1 goto cleanup
move %1 %1.~~~
cd ~~tmp~~
"C:\Program Files\7-Zip\7z.exe" a -tzip %1 *
cd ..
if not exist %1 move %1.~~~ %1
:cleanup
rd /s /q ~~tmp~~
del %1.~~~
:exit |
В папку входить пришлось для того, чтобы архиватор не добавлял саму папку в архив. Если распаковка или упаковка не удалась, преобразование не выполняется, оригинальный файл сохраняется. Командный файл требует полного пути к архиву, иначе работать не будет, но с перечислителем все должно быть нормально. Папка ~~tmp~~ создается в папке перечислителя. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|