Dans le guide précédent, nous avons appris comment archiver des fichiers et des répertoires à l'aide de la commande tar sous Linux. Maintenant, nous allons faire la même chose, mais en utilisant Zip un décompresser programmes. L'application zip est à la fois un utilitaire d'archivage et de compression, nous pouvons donc l'utiliser pour archiver, compresser et décompresser des fichiers et des répertoires dans les systèmes d'exploitation de type Linux et Unix. Cette application zip est compatible avec Windows et les autres applications zip du système d'exploitation. Cependant, gzip et bzip2 sont les applications de compression prédominantes. Voyons maintenant comment archiver des fichiers et des répertoires sous Linux en utilisant Zip programme.
Archiver des fichiers et des répertoires sous Linux à l'aide du programme Zip
Le programme Zip est préinstallé avec certaines distributions Linux. Juste au cas où s'il n'est pas disponible, vous pouvez l'installer en utilisant le gestionnaire de paquets par défaut de la distribution.
Sur Arch Linux et ses variantes :
$ sudo pacman -S zip unzip
Sur RHEL, CentOS, Fedora :
$ sudo yum installer zip décompresser
Sur Debian, Ubuntu, Linux Mint :
$ sudo apt-get install zip unzip
Sur SUSE/openSUSE :
$ sudo zypper install zip unzip
Voyons maintenant quelques exemples.
Créer une nouvelle archive
Pour archiver un groupe de fichiers en un seul, faites simplement :
$ fichier zip.zip fichier1 fichier2 fichier3
Exemple de sortie :
ajout :fichier1 (stocké 0%)ajout :fichier2 (stocké 0%)ajout :fichier3 (stocké 0%)
Ici, nous créons une archive nommée file.zip de fichier1 , fichier2 et fichier3 . Vous n'êtes pas obligé d'utiliser le .zip extension à la fin du nom du fichier. Je l'ai ajouté par souci de clarté.
De même, pour créer une archive d'un répertoire, exécutez :
$ répertoire zip.zip ostechnix/ en ajoutant :ostechnix/ (stocké 0%)
Ici, j'ai créé une archive nommée directory.zip de l'ostechnix dossier. Veuillez noter que cela n'ajoute que le répertoire parent (c'est-à-dire) à l'archive. Pour archiver tous les sous-répertoires de manière récursive, utilisez -r drapeau comme ci-dessous.
$ zip -r répertoire.zip ostechnix/ ajout :ostechnix/ (stocké 0 %) ajout :ostechnix/file.txt (dégonflé 67 %) ajout :ostechnix/audio.mp3 (dégonflé 6 %) ajout :ostechnix/image.jpg (dégonflé 3 %)
Contrairement à l'utilitaire tar, le programme zip crée une archive et la compresse dans la mesure du possible. Mais tar est un archiveur, pas un outil de compression.
Créer une archive de plusieurs répertoires et/ou fichiers à la fois
Parfois, vous devrez peut-être créer une archive à partir d'un groupe de fichiers et de dossiers. Pour ce faire, exécutez :
$ zip -r répertoire.zip ostechnix/ fichier1 fichier2 fichier3 ajout :example/ (stocké 0 %) ajout :example/Stephen.jpg (dégonflé 3 %) ajout :file1 (stocké 0 %) ajout :file2 (stocké 0 %) ajout :file3 (stocké 0 %)
La commande ci-dessus crée une archive nommée directory.zip de ostechnix répertoire et le groupe de fichiers à savoir file2 , fichier2 , fichier3 .
Maintenant, laissez-moi vous montrer un autre exemple.
répertoire zip $.fichier zip4 ajout :fichier4 (stocké à 0 %)
As-tu remarqué? J'ai spécifié l'archive existante, mais le programme zip a mis à jour le contenu du fichier d'archive existant sans le remplacer. Ainsi, si vous avez spécifié une archive existante, elle est mise à jour plutôt que remplacée. Pour faire simple, l'archive existante est conservée, le nouveau fichier4 est ajouté. C'est un avantage notable du programme zip par rapport à l'utilitaire tar.
Extraire les archives
L'extraction d'archives est aussi simple que la création d'archives. Pour extraire une archive, faites simplement :
$ unzip répertoire.zip
Exemple de sortie :
Archive :répertoire.zip création :ostechnix/ gonflage :ostechnix/file.txt gonflage :ostechnix/audio.mp3 gonflage :ostechnix/image.jpg extraction :fichier1 extraction :fichier2 extraction :fichier3 extraction :fichier4
Vous pouvez également extraire de manière sélective un fichier ou un dossier spécifique du répertoire. Par exemple, la commande suivante extrait file4 à partir de l'archive répertoire.zip .
$ unzip directory.zip file4 Archive :répertoire.zip extraction :fichier4
Lister le contenu d'une archive sans l'extraire
Pour lister le contenu d'une archive sans réellement l'extraire, utilisez -l drapeau.
$ unzip -l répertoire.zip Archive :répertoire.zip Longueur Date Heure Nom--------- ---------- ----- ---- 0 2018-03-29 15:55 ostechnix/ 1286 2018 -01-11 12:16 ostechnix/fichier.txt 8073033 2018-03-29 14:03 ostechnix/audio.mp3 15240 2018-03-29 14:45 ostechnix/image.jpg 5 2018-03-29 15:58 fichier1 5 2018-03-29 15:58 fichier2 5 2018-03-29 15:58 fichier3 5 2018-03-29 16:37 fichier4--------- ------- 8089579 8 fichiersCela peut être utile lorsque vous souhaitez rechercher et extraire un fichier spécifique au lieu d'extraire l'intégralité de l'archive.
Création d'une archive chiffrée
L'autre fonctionnalité notable de la commande zip est qu'elle nous permet de créer une archive cryptée, de sorte que les utilisateurs doivent entrer le mot de passe afin d'extraire ou d'afficher le contenu de l'archive.
Pour créer une archive chiffrée, utilisez -e drapeau.
$ zip -e -r répertoire.zip ostechnix/ fichier1 fichier2 fichier3 fichier4 Entrez le mot de passe : Vérifier le mot de passe : ajout :ostechnix/ (stocké 0 %) ajout :ostechnix/file.txt (dégonflé 67 %) ajout :ostechnix/audio.mp3 (dégonflé 6 %) ajout :ostechnix/image.jpg (dégonflé 3 %) ajout :file1 (stocké 0%) ajout :fichier2 (stocké 0 %) ajout :fichier3 (stocké 0 %) ajout :fichier4 (stocké 0 %Lors de l'extraction ou de la visualisation du contenu de l'archive, vous devez saisir le mot de passe correct.
$ unzip directory.zip Archive :répertoire.zip[répertoire.zip] ostechnix/fichier.txt mot de passe :Créer une archive en plusieurs parties
Parfois, vous devrez peut-être partager un fichier d'archive sur Internet et ce fichier d'archive lui-même peut être trop volumineux pour être envoyé sur Internet ou sur un réseau local. Dans de tels cas, nous pouvons créer des archives multi-par de petite taille et les envoyer sur Internet.
Pour archiver un répertoire en plusieurs parties plus petites, par exemple 3 Mo chacun, nous faisons :
$ zip -r -s 3m archive.zip ostechnix/Cette commande créera des fichiers d'archive de taille 3 Mo comme archive.z01 , archive.z02 , archive.z03 .... et archive.zip . Vous devez envoyer ces fichiers au destinataire. Lors de l'extraction de ces fichiers d'archive, tout le contenu sera extrait dans un seul dossier nommé ostechnix .
Pour diviser l'archive en Go, utilisez "g" comme ci-dessous :
$ zip -r -s 3g archive.zip ostechnix/Créer des archives d'autres programmes
Zip peut accepter une entrée standard, il est donc possible de créer une archive d'autres programmes. La commande suivante dirige la sortie de la commande "ls" comme entrée de la commande zip.
$ ls -l Documents/ | zip ls-documents.zip - ajout :- (dégonflé à 56 %)Rappelez-vous ici ls-documents.zip est l'archive de la commande "ls". Ainsi, il n'affichera pas le contenu de l'archive en utilisant -l commutateur.
Au lieu de cela, vous pouvez afficher son contenu à l'aide de la commande :
$ unzip -p ls-documents.zip | moinsIci, -p fait référence au tuyau.
Compresser les archives avec un taux de compression
Pour archiver un répertoire et son contenu avec le plus haut niveau [9] de compression :
$ zip -r -9 archive.zip ostechnix/Zip prend en charge trois niveaux de compression comme indiqué ci-dessous.
- 1 – Le plus rapide (le pire)
- 9 – Le plus lent (le meilleur ou le plus élevé)
- 6 – Niveau par défaut
Exclure des fichiers ou des dossiers lors de la création d'archives
Nous pouvons exclure les fichiers ou sous-répertoires indésirables lors de la création d'une archive. Pour ce faire, utilisez -x drapeau comme ci-dessous :
$ zip -r répertoire.zip ostechnix/ -x ostechnix/image.jpg
La commande ci-dessus créera une archive du répertoire ostechnix, mais exclura image.jpg fichier de l'archive.
Vous pouvez vérifier le contenu sans extraire le fichier d'archive à l'aide de la commande suivante.
$ unzip -l répertoire.zip
Supprimer des fichiers d'une archive existante
Vous avez peut-être oublié d'exclure certains éléments indésirables lors de la création d'archives. Pas de soucis! Vous pouvez supprimer ces fichiers même après avoir créé l'archive.
Pour supprimer les fichiers indésirables d'une archive existante, utilisez -d drapeau comme indiqué ci-dessous.
$ zip -d répertoire.zip "ostechnix/fichier.txt" suppression :ostechnix/file.txt
De même, pour supprimer un groupe de même type de fichiers, par exemple .txt filesuse :
$ zip -d répertoire.zip "ostechnix/*.txt"
Et, c'est tout pour le moment. Nous n'avons fait qu'effleurer la surface des commandes zip/unzip. Vous pouvez faire beaucoup plus en utilisant ces programmes. Pour plus de détails, reportez-vous aux pages de manuel.
$ man zip
$ man unzip