Ceci est une ancienne révision du document !
Format ZIP
ZIP est un vieux format d'archive compressé, mais aussi une commande pour créer ce type d'archive. Le format « .zip » est supporté nativement dans Ubuntu.
Il archive des fichiers (regroupement en un seul fichier) et les compresse (réduction de la taille). La commande zip sous Ubuntu est sous licence libre.
Gzip (extension .gz), très utilisé sous Linux, utilise le même algorithme deflate que le zip pour compresser, mais sans option d'archivage. L'archivage vient alors de tar, d'où l'extension .tar.gz.
Un des inconvénients du ZIP c'est que dans sa dimension "archivage", il perd certaines métadonnées. Ce n'est pas forcément important, mais si c'est le cas, alors mieux vaut utiliser l'archiveur .tar.
Installation
Zip est installé par défaut, vous n'avez rien à faire. Si zip n'est pas installé sur votre version d'Ubuntu (ou a été effacé) :
Gérer les .zip avec un logiciel graphique
Le format zip (la version en ligne de commande) doit être installé. Il sera utilisé par les logiciels graphiques.
- Pour extraire (décompresser) une archive, il suffit de faire un clic-droit sur son fichier, puis choisir "Extraire l'archive" (ou formulation équivalente selon votre variante d'Ubuntu, comme "Décompresser l'archive").
- Pour créer une archive, il suffit de sélectionner les fichiers à compresser dans son explorateur de fichiers, puis faire un clic-droit, "compresser" (ou un équivalent), choisir le zip dans les formats de compression/archivage proposé, et valider.
Les gestionnaires d'archives ne sont donc pas forcément indispensables, mais votre installation d'Ubuntu en a normalement un, permettant d'aller plus loin dans la manipulation des archives (ajouts ou suppressions partielles, par exemple). Si vous en cherchez un autre, consultez cette page.
Gérer les .zip en ligne de commande
On utilise alors les commandes zip (création) et unzip (extraction).
Création
zip votre_archive.zip [liste des fichiers à archiver/compresser] zip -r votre_archive.zip [dossier à archiver/compresser] zip -r votre_archive.zip *
(dans le dernier exemple, l'étoile * indique que TOUS les fichiers et sous-répertoires du répertoire courant sont à archiver/compresser).
zip -e votre_archive.zip [liste des fichiers]
L'option -e chiffre le zip et demande un mot de passe.
Afin de compresser plusieurs sous-répertoires séparément (bash) :
for f in *; do zip "$f.zip" "$f"/*; done
Extraction
unzip votre_archive.zip -d mon_repertoire
Extraction de plusieurs .zip d'un même dossier :
for f in *.zip;do unzip "$f";done
ou
unzip '*.zip'
Archives zip découpées
Quelques fois les archives zip sont découpées comme suit : archive.z01, archive.z02, …, archive.zip
Pour gagner du temps à la décompression / extraction, on peut assembler ces fichiers dans une seule archive, puis extraire cette dernière :
cat archive.z* > archive_globale.zip unzip archive_globale.zip