Dans ce didacticiel, nous nous basons sur le zip et décompressez commandes et comment ils sont utilisés sous Linux. Zip est une commande utilisée pour créer un fichier archive ou un fichier compressé. Cela vous permet de compresser vos fichiers et de créer plus d'espace pour d'autres fichiers sur votre disque dur ou votre lecteur amovible. De plus, la compression de vos fichiers/répertoires les rend plus portables et plus faciles à télécharger, télécharger ou même joindre et envoyer par e-mail. Le contraire de la compression est la décompression, et ici nous utilisons la commande unzip pour décompresser les fichiers et y accéder individuellement. /P>
Avant de commencer à discuter des commandes zip et unzip, voyons comment ces commandes peuvent être installées à partir de la ligne de commande,
Installer la commande zip &unzip sur Ubuntu / Debian / Linux Mint
Ouvrez le terminal et exécutez la commande apt suivante,
$ sudo apt install -y zip unzip or $ sudo apt-get install -y zip unzip
Installer la commande zip &unzip sur CentOS / RHEL / Fedora
Ouvrez le terminal et exécutez la commande ci-dessous,
$ sudo yum install -y zip unzip or $ sudo dnf install -y zip unzip
Plongeons-nous et voyons comment compresser et décompresser des fichiers et des répertoires sous Linux avec la commande zip et unzip avec des exemples.
Commande Zip sous Linux
Compresser un fichier est aussi simple qu'ABC. La syntaxe est assez simple :
$ zip OPTIONS fichier archive.zip
Quelques points à prendre en considération avant de continuer :
- Vous devez disposer d'autorisations en écriture sur le fichier que vous compressez et sur l'emplacement du répertoire avant de compresser un fichier.
- Lorsque vous décompressez ou extrayez un fichier, l'utilisateur est propriétaire du fichier/répertoire.
Exemple 1) Compresser un seul fichier et plusieurs fichiers avec la commande zip
Supposons que vous ayez un fichier texte - reports1.txt - dans votre répertoire actuel et que vous souhaitiez le compresser dans une archive appelée reports.zip.
La commande pour cette opération sera :
$ zip reports.zip reports1.txt
De plus, vous pouvez compresser plusieurs fichiers à la fois dans une archive comme indiqué :
$ zip archive.zip fichier1 fichier2 fichier3
Encore une fois, supposons que nous ayons 3 fichiers texte reports1.txt, reports2.txt et reports3.txt. Pour les compresser dans l'archive reports.zip, exécutez la commande :
$ zip reports.zip reports1.txt reports2.txt reports3.txt
Exemple 2) Ajout d'un fichier à une archive zip (-u)
Parfois, vous pouvez avoir besoin d'ajouter un fichier à une archive zip. Pour ce faire, utilisez le drapeau -u. Par exemple, pour ajouter un autre fichier reports4.txt, exécutez :
$ zip -u reports.zip report4.txt
Exemple 3) Afficher le contenu d'un fichier compressé
Pour afficher le contenu d'un fichier compressé, utilisez la commande comme indiqué :
$ zipinfo archive.zip
Exemple 4) Compresser tous les fichiers du répertoire courant (* )
Si vous avez plusieurs fichiers dans votre répertoire actuel, vous pouvez tous les compresser à la fois en utilisant le symbole générique comme indiqué dans la syntaxe ci-dessous :
$ zip archive.zip *
Par exemple, pour compresser tous les fichiers du répertoire personnel dans l'archive home.zip, exécutez la commande ci-dessous. Assurez-vous que vous travaillez dans le répertoire personnel.
$ zip home.zip *
Exemple 5) Supprimer un fichier d'une archive (-d)
Pour supprimer un fichier d'une archive, invoquez l'indicateur -d. Par exemple, pour supprimer reports4.txt du fichier compressé, exécutez :
$ zip -d reports.zip reports4.txt
Exemple 6) Supprimer des fichiers après avoir compressé (-m)
Comme vous l'avez peut-être remarqué, les fichiers originaux restent même après les avoir compressés ou archivés.
Si vous préférez vous en débarrasser lors de l'archivage et économiser de l'espace, invoquez l'option -m lors de l'archivage comme indiqué :
$ zip -m reports.zip reports1.txt reports2.txt reports3.txt
Exemple 7) Comment compresser un répertoire (-r)
Nous avons jusqu'à présent vu comment compresser des fichiers. Souvent, vous serez chargé de compresser des répertoires car ils occupent plus d'espace la plupart du temps.
Pour compresser un dossier, utilisez la syntaxe ci-dessous. L'option -r a compressé le dossier de manière récursive.
$ zip -r dossier archive.zip
Par exemple, pour compresser les données d'un répertoire dans une archive data.zip, exécutez :
$ zip -r data.zip data
Comme pour les fichiers, vous pouvez également compresser plusieurs dossiers simultanément, comme indiqué :
$ zip -r archive.zip dossier1 dossier2 dossier3
Exemple 8) Compressez un fichier vers une destination différente
Pour compresser un fichier vers une destination différente autre que le répertoire actuel, spécifiez simplement le chemin d'accès à l'archive compressée dans votre syntaxe comme indiqué :
$ zip /chemin/vers/destination/fichier archive.zip
Par exemple, le fichier hello.txt est archivé dans le fichier file.zip dans le chemin Documents/data/sales.
Exemple 9) Compressez les fichiers et les répertoires dans leurs propres archives
Si, pour une raison quelconque, vous souhaitez compresser des fichiers et des répertoires du répertoire actuel dans leurs archives zip individuelles, utilisez la boucle for comme indiqué :
$ for i in *; do zip -r "${i%}.zip" "$i"; done
Par exemple, l'exemple ci-dessous compresse le fichier hello.txt et le dossier sales dans leurs propres archives hello.zip et sales.zip respectivement.
Commande de décompression sous Linux
Passons maintenant à la vitesse supérieure et concentrons-nous sur la commande de décompression. La commande est utilisée pour décompresser ou décompresser les fichiers et répertoires compressés. Examinons quelques exemples d'utilisation de la commande :
Exemple 1) Comment afficher le contenu d'un fichier zippé (-l)
Avant de décompresser un fichier ou un répertoire, vous pouvez afficher le contenu de l'archive à l'aide de l'option -l comme indiqué :
$ unzip -l archive.zip
Par exemple :
$ unzip -l data.zip
Exemple 2) Comment afficher le contenu détaillé d'un fichier compressé (-Z)
Pour afficher des informations plus détaillées sur le fichier, telles que les autorisations de fichier et la taille totale des fichiers dans l'archive, utilisez l'option -Z comme indiqué :
$ unzip -Z data.zip
Exemple 3) Comment décompresser/décompresser un fichier compressé (-d)
Dans sa syntaxe de base et la plus simple, la décompression d'un fichier compressé utilise la syntaxe ci-dessous et se produit dans le répertoire de travail actuel.
$ décompressez archive.zip
Par exemple :
$ unzip data.zip
Exemple 4) Décompressez un fichier dans un autre répertoire
Pour extraire ou décompresser une archive vers une destination différente, utilisez l'indicateur -d et spécifiez le chemin de destination comme indiqué
$ unzip archive.zip -d /chemin/vers/destination/dossier
Par exemple.
$ unzip data.zip -d /home/linuxtechi/Documents
Exemple 5) Décompressez un ou plusieurs fichiers d'une archive
Souvent, vous aurez un fichier compressé avec plusieurs fichiers. Au lieu de décompresser entièrement l'archive, vous pouvez choisir de n'extraire qu'un ou deux fichiers. Pour ce faire, spécifiez le ou les fichiers comme indiqué dans la syntaxe :
$ décompressez archive.zip fichier1 fichier2
Par exemple, pour extraire un fichier appelé hello.txt de l'archive home.zip run
$ unzip home.zip hello.txt
De plus, vous pouvez extraire le fichier dans un dossier de destination différent au lieu du répertoire actuel. Par exemple, la commande ci-dessous extrait le fichier hello.txt dans le répertoire Documents/data/sales.
$ unzip home.zip hello.txt -d Documents/data/sales
Exemple 6) Exclure certains fichiers de la décompression (- x)
Tout comme vous pouvez extraire un ou plusieurs fichiers spécifiques d'une archive, vous pouvez également exclure certains fichiers de la décompression. Ceci est possible en utilisant l'option ( -x) dans la syntaxe indiquée
$ unzip archive.zip -x fichier1
Par exemple, l'exemple ci-dessous exclut les fichiers file1.txt et file2.txt de l'extraction.
$ unzip archive.zip -x file1.txt file2.txt
Exemple 7) Comment supprimer la sortie de la commande unzip (-q)
Comme vous l'avez peut-être remarqué, les détails de l'opération de décompression indiquant l'emplacement de l'extraction et les fichiers extraits sont imprimés sur le terminal. Pour supprimer ces informations, utilisez le commutateur -q comme indiqué :
$ unzip -q data.zip
Exemple 8) Comment écraser des fichiers existants (-o)
Lorsque vous exécutez la commande unzip deux fois dans le même répertoire, vous serez invité à remplacer, ignorer l'extraction ou renommer les fichiers existants, comme indiqué dans la sortie ci-dessous.
Si vous souhaitez écraser le fichier existant, sans y être invité, utilisez l'option -o comme indiqué :
$ unzip -o data.zip
Exemple 9) Décompressez plusieurs fichiers
Enfin, pour décompresser plusieurs fichiers à la fois, utilisez un caractère générique dans la syntaxe indiquée :
$ unzip '*.txt'
Prenez note de l'apostrophe entourant le paramètre *.txt.
Conclusion
Ceci nous amène à la fin de ce guide; nous avons présenté l'utilisation des commandes zip et unzip et les différentes options que vous pouvez utiliser. Pour plus d'informations sur leur utilisation, n'hésitez pas à visiter leurs pages de manuel. Nous espérons que vous maîtrisez bien l'utilisation des deux commandes et que vous pouvez confortablement compresser et décompresser vos fichiers.