GNU/Linux >> Tutoriels Linux >  >> Linux

Comment archiver des fichiers et des répertoires sous Linux [Partie 2]

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 fichiers 

Cela 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 | moins

Ici, -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

Linux
  1. Comment compresser des fichiers et des répertoires sous Linux (avec exemples)

  2. Comment archiver des fichiers et des répertoires sous Linux [Partie 1]

  3. Comment archiver et compresser des fichiers sous Linux

  4. Comment compresser plusieurs fichiers sous Linux

  5. Comment rechercher et supprimer des répertoires et des fichiers vides sous Linux

Comment sauvegarder des fichiers et des répertoires à l'aide de Rsync sous Linux

Comment renommer des fichiers et des répertoires sous Linux

Comment copier des fichiers et des répertoires dans un terminal Linux

Comment compresser des fichiers et des dossiers sous Linux

Comment supprimer des fichiers et des répertoires à l'aide de la ligne de commande Linux

Comment compresser un fichier sous Linux