Member
Статус: Не в сети Регистрация: 27.01.2008 Откуда: Украина, Киев
Прошу прощение, если таки не в той ветке создаю, но в ветке с ПО мне не помогли =(.
Решил написать крохотный скриптик для бекапа и на этапе архивирования застрял. Используется в этих целях у меня 7-Zip. Суть вопроса: как верно указать в командной строке: наименование архива, откуда грести файло(с параметрами разгребусь) и куда архивировать(интересует иная директория).
Сейчас это выглядит примерно так:
7z a -t7z -mx=1 archive.7z d:\test1
(кстати параметр 7z без указания пути к 7зипу вообще не хавается, возможно и это как можно избежать?)
По идее он должен файлы папки тетс1 архивировать и выдает, что все ОК. но вопрос КУДА??? он архивирует.
Junior
Статус: Не в сети Регистрация: 12.10.2007 Откуда: Челябинск
попробуй так 7z a -t7z -mx=1 d:\test1\archive.7z d:\test2
а на счет вызова команды без полного пути, решается просто - в свойствах компьютера в переменных окружения к параметру "Путь"\"Path" добавить путь к исполняемому файлу, например c:\program files\7-zip\
Member
Статус: Не в сети Регистрация: 27.01.2008 Откуда: Украина, Киев
DmitryFromChelyabinsk
благодарю за совет, сейчас буду пробовать.
Добавлено спустя 7 минут, 24 секунды DmitryFromChelyabinsk
что-то не вышло с Вашим методом прописывания переменной 7з...
Вот что прописал, но он по преженему не видит ее без указания пути, в чем моя ошибка?
Добавлено спустя 2 минуты, 44 секунды О!
Вы мне дали толчек для размышлений. Теперь он в папке тетс1 создал пустой архив из папки тест2...думаю далее расковыряю =)
Добавлено спустя 1 минуту, 40 секунд в итоге, вдруг кому интересно: в скобках{} коменты
7z a -t7z{тип арахива} -mx=1{степень сжатия} d:\test2\archive.7z{куда положить и как будет называться архив} d:\test1{из чего делать архив}
Advanced member
Статус: Не в сети Регистрация: 09.03.2004 Откуда: Кишинёв
Menwyy писал(а):
Прошу прощение, если таки не в той ветке создаю, но в ветке с ПО мне не помогли
Это не повод плодить темы. Можно было и в теме по 7-zip'у спросить - там подобные вопросы часто возникают. Туда и переедем..
Батник:
Код:
path C:\Program Files\7-Zip cd d:\test1 d: 7z a -mx1 archive.7z d:\test2
Расшифровка строк:
1) для запуска 7z без полного пути, действует только для текущего батника(или сеанса cmd)
2) на диске D: делаем каталог test1 текущим
3) переходим на диск D:
4) непосредственно команда, архив создаётся в текущей папке (d:\test1). В зависимости от ситуации можно сделать текущим каталог с источником(ками) для архивирования, тогда нужно будет указывать полный путь к архиву.
Junior
Статус: Не в сети Регистрация: 15.07.2007 Откуда: Ростовская обл
перезагрузка не требуется
но не нада портить %path% - можно просто закинуть 7z.dll и 7z.exe в папку WINDOWS или SYSTEM32.
и лучше использовать команду CD /d
_________________ Не трогай технику
и она тебя не подведёт
Member
Статус: Не в сети Регистрация: 31.05.2006 Откуда: ua
Переменную path лучше без сильной нужды вообще не трогать. Особенно в данном случае, где достаточно в батнике написать полный путь к экзешнику (т.е. что-то типа "C:\Program Files\7-Zip\7za.exe" вместо "7za.exe")
На предыдущей странице kve выложил полезные батники, можно заглянуть туда за синтаксисом. Я использую такой вариант (в линуксовом скрипте, похожем на вариант kve, если кому надо — могу выложить всё; .sh для упаковки в 7z двумя методами, сравнения размера, и удаления большего + опционально, того, что жали):
Код:
7za a -m0=LZMA -mx=9 -ms=off -t7z имя_архива_куда_жать исходный_файл
Всё после "а" (кроме названия исходных файлов и имени архива) необязательно. Если не указан путь назначения, архив ложится в текущий рабочий каталог, как и везде, собственно.
Сколько себя помню (а лет мне ой как много), в сообщениях о свежем 7-Zip'е версия для Intel Itanium всегда упорно называется x64 для Intel, да еще и утверждается, что она на XP работать будет, хотя под платформу Itanium выпускаются только серверные варианты Windows. Жить эта странность лично мне никоим образом не мешает, однако традиция любопытная. Интересно, какую цель она преследует...
Advanced member
Статус: Не в сети Регистрация: 09.03.2004 Откуда: Кишинёв
ALittleUser там ничего не утверждается - это просто "опечатка". Вверху новости есть почта, куда можно отправить письмо автору с предложением исправить это недоразумение.
Member
Статус: Не в сети Регистрация: 31.05.2006 Откуда: ua
shutter Интересный вопрос, но похоже никак, только родным раром. Комментарии хранятся в теле архива в сжатом виде, врядли их можно как-то оттуда иначе достать, а у 7-zip'a они отдельно в внешнем descript.ion. Более совместимо (тотал коммандер и фар например из этих файлов их могут читать) и просто, но к архиву сами естественно не цепляются.
Решил провести небольшое тестирование нового метода.
Для этого взял папку с распакованной игрой Jagged Alliance 2: Wildfire.
Общий размер папки: 984.254.997 байт.
Всего файлов для сжатия: 2.690 файлов.
#77 Сначала провел тест с старым методом LZMA (ниже на скриншоте настройки - выбрано 2 потока из 2-х возможных): #77
Результат: #77 Время сжатия: 3 минуты 51 секунда.
Размер архива: 571.685.907 байт.
Средняя загрузка CPU: 20%
Далее тест с новым методом сжатия LZMA2 (ниже на скриншоте настройки - выбрано 8 потоков из 16-х возможных, обратите внимание, что "объем памяти для упаковки данных" резко вырос с 709Мб, до 2749Мб): #77
Результат: #77 Время сжатия: 1 минута 35 секунд.
Размер архива: 571.707.302 байт.
Средняя загрузка CPU: 90%
Ну и для верности добавил результат WinRAR'а версии 3.80 (мультипоточность включена): #77
Результат: #77 Время сжатия: 2 минуты 41 секунда.
Размер архива: 585.275.691 байт.
Средняя загрузка CPU: 36%
Результаты говорят сами за себя. Пока что метод LZMA2 является лидером по соотношению сжатие/время (на что сказалась оптимизация на многопоточность)...и WinRAR тут теперь совсем не соперник
Из минусов - LZMA2 пока похоже мало где поддерживается, тот же WinRAR отказался распаковывать архив, сжатый методом LZMA2. Но, думаю, это вопрос времени, и в WinRAR добавится и этот метод распаковки.
What's new after 7-Zip 9.00 alpha:
- A memory leak in LZMA2 code was fixed.
- Some bugs were fixed.
What's new after 7-zip 4.65:
- 7-Zip now supports LZMA2 compression method.
- 7-Zip now supports XZ archives.
- 7-Zip now can unpack NTFS, FAT, VHD and MBR archives.
- 7-Zip now can unpack GZip, BZip2, LZMA, XZ and TAR archives from stdin.
- 7-Zip now can open/copy/compress disk images (like \\.\c:) from \\.\ folder.
- 7-Zip File Manager now doesn't use temp files to open nested archives
stored without compression.
- New -scrc switch to calculate total CRC-32 during extracting / testing.
- Some bugs were fixed.
Don't use this alpha version for important data. Call "Test" command after each compressing operation.
чота я не понял 9.0 новее чтоли?
Злостный читер
Статус: Не в сети Регистрация: 15.12.2003 Откуда: Russia, MO Фото: 275
попробовал 9.01
по сжатию в LZMA2 7-Zip 9.01 показал те же результаты, что и 9.00 (время, потребление памяти, размер архива)
(в обоих случаях использовал x64 версию)
Member
Статус: Не в сети Регистрация: 06.10.2003 Откуда: ХМАО Фото: 2
Подскажите плиз что за фигня может быть: есть файл arc.DMP - 6,71 Гб
Жму так: "c:\program files\7-zip\7z.exe" a h:\BASE_%tempdate%_8530_200806.7z H:\arc.* Получаю файл в архиве 2.9 Гб, архив сам 475Мб
Жму так: "c:\program files\7-zip\7z.exe" a -tzip h:\BASE_%tempdate%_8530_200806.zip H:\arc.* . Получаю 7 215 243 264 Bytes (как надо ) и ZIP архив 990Мб.
Что то не въеду а как создать 7z архив моего файла?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения