Jak wykluczyć folder w 7zip?

8

Chcę skompresować folder, C:\Tempale bez określonego podfolderu (np C:\Temp\test.). Jak mogę to zrobić za pomocą 7zip?

Wymyśliłem następujące polecenie:

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

ale to nie działa, ponieważ dane wyjściowe to:

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
Martin Vseticka
źródło
Być może brakuje -rflagi (rekurencyjnej). Domyślnie nie ma powtarzania podkatalogów.
Doktoro Reichard,
Przełącznik -rnie pomógł.
Martin Vseticka,

Odpowiedzi:

6

Jak przetestowano w moim systemie:

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

Jeśli jesteś w katalogu źródłowym, pliki są przechowywane ze ścieżkami względnymi, więc folder testowy wygląda test\file1.txtinaczej c:\temp\test\file1.txt.

Uwaga: z przełącznikiem -mx0 nie kompresujesz plików, tylko kopiujesz je do archiwum w pełnym rozmiarze.

Scott McKinney
źródło
1
Dziękuję Ci. Sprawiłem, że działało z poleceniem 7zip a -t7z test.7z c:\temp\ -mx0 -x!Temp\test\*. Zwróć uwagę na część, Temp\test\*która różni się od twojego polecenia. Nie wiem, dlaczego twoje polecenie nie działa dla mnie.
Martin Vseticka,
Celowo użyłem -mx0przełącznika. Po prostu musiałem wykonać kopię zapasową na moim serwerze i chciałem mieć minimalny wpływ na procesor mojego serwera.
Martin Vseticka,
Zaktualizowałem tę odpowiedź, moje osobiste doświadczenie było takie, że musiałem podać więcej ścieżki względnej, aby to również
zadziałało