Як виключити папку в 7zip?


8

Я хочу стиснути папку, C:\Tempале без конкретної підпапки (наприклад, C:\Temp\test). Як я можу це зробити за допомогою 7zip?

Я придумав таку команду:

c:\Temp>7zip a -t7z test.7z c:\temp\ -mx0 -x!c:\temp\test\*

але це не працює, оскільки вихід:

7-Zip (A) 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18

Scanning

Updating archive test.7z


Compressing  Temp\admin.PNG
Compressing  Temp\test\admin2.PNG   <<<<<< this file should not be added to the archive
Compressing  Temp\first.txt

Можливо, цього не вистачає -r(рекурсивний) прапор. За замовчуванням - не повторювати підкаталоги.
Doktoro Reichard

Перемикач -rне допоміг.
Мартін Всетічка

Відповіді:


6

Як перевірено в моїй системі:

7zip a -t7z -mx0 -x!test\* test.7z c:\temp\ 

Якщо ви перебуваєте у вихідному каталозі, файли зберігаються з відносними шляхами, тому тестова папка виглядає, як test\file1.txtні c:\temp\test\file1.txt.

Зауважте, що за допомогою перемикача -mx0 ви не стискаєте файли, а лише копіюєте їх у повному обсязі в архів.


1
Дякую. Я змусив це працювати з командою 7zip a -t7z test.7z c:\temp\ -mx0 -x!Temp\test\*. Зверніть увагу на частину, Temp\test\*яка відрізняється від вашої команди. Я не знаю, чому ваша команда не працює на мене.
Мартін Всетічка

Я спеціально використовував -mx0перемикач. Мені просто потрібно було зробити резервну копію на своєму сервері, і я хотів мінімального впливу на процесор мого сервера.
Мартін Всетічка

Я оновив цю відповідь, мій особистий досвід полягав у тому, що мені потрібно вказати більше відносного шляху, щоб це також працювало
Taegost
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.