Перейти к содержанию

7-zip, задать метод и степень сжатия через консоль


Евгений Малинин

Рекомендуемые сообщения

Имеется 7-zip версии 9.21 beta

 

Нужно через консоль задать метод и степень сжатия. Покурив мануалы, понял, что это делается через ключ -m

 

Вопрос: как это сделать?

 

set VTIME=%time:~0,-3%
set VTIME=%VTIME::=.%
"C:\Program Files\7-Zip\7z.exe" a -m=LZMA x=9 trdmp_%date%_%vtime%.7z *.log *.dmp *.txt

 

Запись, что я наколдовал выше выдаёт ошибку...

Ссылка на комментарий
Поделиться на другие сайты

set VTIME=%time:~0,-3%
set VTIME=%VTIME::=.%
"%programfiles%\7-Zip\7z.exe" a -m0=LZMA -mx=9 "c:\trdmp_%date%_%vtime%.7z"  *.log *.dmp *.txt

 

fb128
зачем?

 

Евгений Малинин,

x=9

 

x: eXtract files with full paths
Изменено пользователем Omnividente
Ссылка на комментарий
Поделиться на другие сайты

Евгений Малинин,

Цитата(Евгений Малинин @ 21.04.2011, 9:32) *

x=9

 

 

Цитата

x: eXtract files with full paths

x=[0 | 1 | 3 | 5 | 7 | 9 ]

Sets level of compression

 

Level Method Dictionary FastBytes MatchFinder Filter Description

0 Copy No compression.

1 LZMA 64 KB 32 HC4 BCJ Fastest compressing

3 LZMA 1 MB 32 HC4 BCJ Fast compressing

5 LZMA 16 MB 32 BT4 BCJ Normal compressing

7 LZMA 32 MB 64 BT4 BCJ Maximum compressing

9 LZMA 64 MB 64 BT4 BCJ2 Ultra compressing

 

Note: "x" works as "x=9".

 

Но, как выяснилось, это -mx xD

 

Если так попробывать

 

Спасибо! Так заработало :o

 

Ещё вопрос - ни в справке ни по команде помощи не могу найти ключ, чтобы после архивирования, файлы, помещённые в архив, удалялись. Есть ли такая возможность в консольной версии?

 

Если такого нет, то как считать выходной код архиватора (тогда я по условию, если код 0, удалю все *.dmp, *.log и *.txt в папке)?

Ссылка на комментарий
Поделиться на другие сайты

Ещё вопрос - ни в справке ни по команде помощи не могу найти ключ, чтобы после архивирования, файлы, помещённые в архив, удалялись. Есть ли такая возможность в консольной версии?

 

Если такого нет, то как считать выходной код архиватора (тогда я по условию, если код 0, удалю все *.dmp, *.log и *.txt в папке)?

Дак в батнике котором ты пишешь, после строк для архивации прописывай условие.

 

Он у тебя выполнит действие по архивированию, после чего ты и пиши удалить в такой то папке такие то файлы.

Ссылка на комментарий
Поделиться на другие сайты

Дак в батнике котором ты пишешь, после строк для архивации прописывай условие.

 

Он у тебя выполнит действие по архивированию, после чего ты и пиши удалить в такой то папке такие то файлы.

Суть в том, что мне нужно удалять эти файлы только, если архиватор возвращает 0. Как считать то, что он выдаёт?

Ссылка на комментарий
Поделиться на другие сайты

Суть в том, что мне нужно удалять эти файлы только, если архиватор возвращает 0. Как считать то, что он выдаёт?

Тоесть когда он полностью выполнил архивацию данных успешно?

Ссылка на комментарий
Поделиться на другие сайты

Тоесть когда он полностью выполнил архивацию данных успешно?

Да, именно так :lool: Или, хотя бы "1" - с некритичными ошибками

Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
×
×
  • Создать...