7-Zip : Tous les exemples d’utilisation en ligne de commandes

7zip est un logiciel d'archive très populaire sur Windows.
En effet, il est opensource, gratuit, rapide pour créer, compresser, décompresser, extraire les fichiers ZIP, 7z et tgz.
Pour cela, il est fourni avec une interface graphique, mais vous ne savez peut-être pas mais on peut aussi l'utiliser en ligne de commandes sur Windows ou sur Linux.
Cela permet de l'intégrer dans des scripts Batch, Powershell ou Bash.

Dans ce tutoriel, je vous donne tous les exemples d'utilisation de 7-zip en ligne de commande.

7-zip : Tous les exemples d'utilisation en ligne de commandes

7-zip : Tous les exemples d'utilisation en ligne de commandes

Créer un fichier archive

Pour compresser un ou plusieurs fichiers et créer une archive, on utilise la commande a pour add.
Le switch -t permet d'indiquer le type d'archive.
Pour créer une archive de type 7z, on utilise -t7z :

"C:\Program Files\7-Zip\7z.exe" a -t7z fichier.7z *

Pour créer une archive de type zip, on utilise -tzip :

"C:\Program Files\7-Zip\7z.exe" a -tzp fichier.zip *

Il est possible de filtrer la création de l'archive en spécifiant une ou plusieurs extensions de fichiers. Par exemple pour ne compresser que les fichiers textes :

"C:\Program Files\7-Zip\7z.exe" a -t7z documents-textes.7z *.txt

Pour compresser les fichiers .txt et .doc :

"C:\Program Files\7-Zip\7z.exe" a -t7z documents-textes.7z *.txt *.doc

Enfin pour rendre la création de l'archive récursive, ajoutez -r, ainsi par exemple pour compresser tous les fichiers avi contenus dans les sous-dossiers :

"C:\Program Files\7-Zip\7z.exe" a -t7z videos.7z *.avi -r
Créer un fichier archive en ligne de commandes avec 7zip

Enfin il est aussi possible de compresser en plusieurs fichiers, pour cela :

Créer une archive depuis une liste de fichier

Il est aussi possible de créer un fichier listefichier.txt avec la liste des fichiers à compresser.
Voici un exemple de syntaxe :

C:\Src\*.CPP
D:\Sources\*.CPP

Puis on passe la commande 7z suivante :

"C:\Program Files\7-Zip\7z.exe" a -Tzip Archive.zip @listefichier.txt 

Cela ajoute à l'archive "archive.zip" tous les fichiers "* .cpp" de répertoires "C:\Src" et "D:\Sources"

Supprimer des fichiers de l'archive ZIP

Vous pouvez modifier un fichier archive pour supprimer un ou des fichiers d'un fichier archive avec la commande d.
Par exemple pour supprimer tous les fichiers avec l'extension .bak en récursif du fichier exemple.zip :

"C:\Program Files\7-Zip\7z.exe d exemple.zip *.bak -r
Supprimer des fichiers de l'archive ZIP en ligne de commandes avec 7zip

Extraire un fichier compressé

La commande e permet d'extraire les fichiers d'une archive sans restaurer l'arborescence :

"C:\Program Files\7-Zip\7z.exe" e exemple.zip

Pour extraire les fichiers avec l'arborescence complète, utilisez l'option x :

"C:\Program Files\7-Zip\7z.exe" x exemple.zip

Même chose que pour créer une archive, on peut filtrer pour extraire que les fichiers qui nous intéresse.
Par exemple pour décompresser que les fichiers MPG4, on utilise aussi l'option -r pour une décompression récursive.

"C:\Program Files\7-Zip\7z.exe" x fichier.7z *.mp4 -r
Extraire un fichier compressé en ligne de commandes avec 7zip

Ainsi on peut aussi extraire un fichier spécifique par son nom.
Pour extraire le fichier "Démarrer en mode sans échec sur Windows10.mp4", utilise bien les apostrophes comme le nom du fichier contient des espaces :

"C:\Program Files\7-Zip\7z.exe" x fichier.7z "Démarrer en mode sans échec sur Windows10.mp4" -r
Extraire un fichier en ligne de commandes avec 7zip

Mettre à jour une archive

La mise à jour d'un fichier ZIP se fait avec l'option u.
Cela permet d'ajouter de nouveaux fichiers à votre archive ZIP.
Par exemple pour ajouter tous les fichiers doc dans exemple.zip :

"C:\Program Files\7-Zip\7z.exe" u exemple.zip *.doc

Tester une archive

Afin de vérifier que le fichier ZIP ou 7z n'est pas corrompu, vous pouvez effectuer une vérification CRC.
Le test de l'archive se fait avec l'option t :

"C:\Program Files\7-Zip\7z.exe" t exemple.zip

Quand tout est correct, cela retourne Everything is OK.

Everything is Ok

Folders: 4
Files: 203
Size:       2155031085
Compressed: 2146500049
Tester une archive en ligne de commandes en ligne de commandes avec 7zip

Liste des commandes 7-zip

CommandesDescription
aAjouter des fichiers à archiver
bFaire un benchmark
dSupprimer des fichiers d'archive
eExtraire des fichiers d'archive (sans utiliser les noms de répertoires)
hCalculez les valeurs de hachage pour les fichiers
iAfficher les informations sur les formats pris en charge
lLister du contenu des archives
rnRenommer des fichiers dans les archives
tTester l'intégrité des archives
uMettre à jour les fichiers à archiver
xExtraire des fichiers avec des chemins complets
Les commandes de 7zip