Comment exclure un dossier dans 7zip?

8

Je veux compresser le dossier C:\Tempmais sans sous-dossier spécifique (par exemple C:\Temp\test). Comment puis-je faire cela avec 7zip?

J'ai trouvé la commande suivante:

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

mais ça ne marche pas puisque la sortie est:

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
la source
Peut-être qu'il manque le -rdrapeau (récursif). La valeur par défaut n'est pas de récurser les sous-répertoires.
Doktoro Reichard
L'interrupteur -rn'a pas aidé.
Martin Vseticka

Réponses:

6

Comme testé sur mon système:

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

Si vous êtes dans le répertoire source, les fichiers sont stockés avec des chemins relatifs, donc le dossier de test ressemble test\file1.txt, non c:\temp\test\file1.txt.

Veuillez noter qu'avec le commutateur -mx0, vous ne compressez pas les fichiers, vous les copiez uniquement en taille réelle dans l'archive.

Scott McKinney
la source
1
Je vous remercie. Je l'ai fait fonctionner avec la commande 7zip a -t7z test.7z c:\temp\ -mx0 -x!Temp\test\*. Notez la partie Temp\test\*qui diffère de votre commande. Je ne sais pas pourquoi votre commande ne fonctionne pas pour moi.
Martin Vseticka
J'ai utilisé le -mx0commutateur sur le but. Je devais juste faire une sauvegarde sur mon serveur et je voulais un impact minimal sur le processeur de mon serveur.
Martin Vseticka
J'ai mis à jour cette réponse, mon expérience personnelle était que je devais spécifier plus du chemin relatif pour que cela fonctionne aussi
Taegost