GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment compresser un fichier sous Linux avec des exemples simples {ubuntu 20.04}

Dans ce didacticiel, je vais vous donner un guide complet et toutes les options importantes répertoriées sur "Comment compresser un fichier sous Linux". Compresser un fichier ou un répertoire sous Linux permet de sauvegarder et d'économiser de l'espace disque en compressant les fichiers inutilisés. J'utilise Ubuntu Linux 20.04 pour présenter tous les exemples de cet article.

Qu'est-ce que Zip

Zip est essentiellement un utilitaire de conditionnement et de compression de fichiers pour presque tous les systèmes d'exploitation, qu'il s'agisse de Linux, de Windows, de Mac et même de certains systèmes RISC.

Il est toujours installé sur tous les systèmes Linux ou Unix par défaut sauf dans quelques cas. C'est analogue à une combinaison de deux commandestar etcompresser .

Généralement, le programme zip place un ou plusieurs fichiers compressés sous Linux dans une seule archive zip avec des méta-informations sur le fichier.

Le taux de compression des fichiers zip sous Linux est d'environ 2:1 ou 3:1, ce qui est courant pour les fichiers texte et varie selon les types de fichiers. Une seule commande zip peut placer une structure de répertoires entière dans une archive zip.

En cas de archives volumineuses supérieures à 4 Go , zip utilise automatiquement l'extension zip64 . Zip est compatible avec Pkzip et Pkunzip utilitaires également.

Zip prend également désormais en charge l'utilitaire de compression bzip2, si la bibliothèque bzip2 est généralement compilée avec zip.

Décompresser et goudron sont deux compagnons utilitaires. Unzip décompresse ou décompresse l'archive zip et tar est utilisé pour effectuer une sauvegarde.

Prérequis de l'utilitaire Zip

Il n'y a pas de pré-requis particulier, la seule chose que vous devez faire est de vérifier si zip est installé sous Linux ou non.

Exécutez cette commande. il installera l'utilitaire de compression et de décompression si ce n'est pas là. S'il est déjà installé, il sera mis à niveau ou ne fera rien comme indiqué dans la sortie.

$ sudo apt install zip unzip

Il montre l'utilitaire de compression et de décompression est déjà sur la dernière version. vous avez donc terminé l'installation de zip et de décompression jusqu'à ce point et vous êtes prêt à explorer le monde de Compresser les fichiers et les dossiers sous Linux.

Si vous avez une distribution Centos ou Fedora . Exécutez les commandes ci-dessous pour installer zip et décompressez

$ sudo yum install zip
$ sudo yum install unzip

Je vais vous expliquer comment compresser des fichiers sous Linux en utilisant deux options

  1. Compressez un fichier sous Linux à l'aide de l'interface utilisateur graphique (GUI)
  2. Compressez un fichier sous Linux à l'aide de l'interface de ligne de commande (CLI)

Voyons la première option -

Comment compresser un fichier dans l'interface graphique Linux

Étape 1 :-

Accédez au répertoire où se trouvent les fichiers ou les dossiers.

Étape 2 :-

Sélectionnez les fichiers et faites un clic droit - sélectionnez compresser.

Étape 3 :-

Donnez le nom de l'archive. Je vais donner sample-zip à titre d'exemple.

Étape 4 :-

Vous avez terminé !!

Comment compresser un fichier dans un terminal Linux

Tout d'abord, jetez un œil à la syntaxe du zip avec explication -

$ zip options "output_file_name" "target_file" "target_folder"

nom_fichier_sortie - le nom du fichier de sortie que vous voulez donner. extension de code postal ajoutera automatiquement.

target_file ou dossier - est le chemin du fichier ou du dossier que vous souhaitez compresser et il peut avoir des caractères génériques.

Voyons différentes options et exemples de Zip programmez un par un.

Exemple 1 :- Comment compresser ou compresser des fichiers sous Linux

dev@test:~$ zip test file1 file2

sortie
ajout :fichier1 (dégonflé à 69 %)
ajout :fichier2 (dégonflé à 69 %)
dev@test :~$ ls test*
test.zip
dev@ tester :~$

Le nom du fichier et le pourcentage de compression sont reflétés dans la sortie. Comme vous pouvez le voir, je n'ai pas inclus .zip extension, toujours par commande par défaut, ajoutez-la dans le nom du fichier de sortie. Dans mon cas "test-zip.zip ".

si vous voulezsupprimer cette sortie de la commande zip, vous pouvez utiliser l'option -q .

dev@test:~$ zip -q test file1 file2

Sortie

dev@test :~$ ls -ltrh test*
-rw-r--r-- 1 dev dev 56K 18 juin 16:30 test.zip
dev@test :~$

Il peut y avoir le cas, si vous avez oublié de donner le nom du fichier de sortie dans zip commande, alors il choisira par défaut le premier nom de fichier comme fichier de sortie et le deuxième fichier dans zip . Ainsi, l'exemple mentionné ci-dessous montre également comment compresser plusieurs fichiers sous Linux.

dev@test:~$ zip file1 file2

Sortie
ajout :fichier2 (dégonflé à 69 %)
dev@test :~$ ls -l *.zip
-rw-r--r-- 1 dev dev 28519 18 juin 16:33 fichier1.zip

Exemple 2 :- Comment compresser un dossier et des sous-dossiers sous Linux

Généralement, vous devez créer une archive zip au répertoire contenant les fichiers et les sous-répertoires. Zip option -r sera utile pour parcourir cette structure de répertoires de manière récursive.

dev@test:~$ zip -r test sample/

Sortie
ajout :échantillon/ (stocké 0 %)
ajout :échantillon/fichier2 (dégonflé 69 %)
ajout :échantillon/fichier1 (dégonflé 69 %)
dev@test :~ $ ls sample*
test.zip

Niveaux de compression dans l'utilitaire Zip

La valeur par défaut le niveau de compression dufichier zip est de -6 et vous avez toute la liberté de choisir un nombre entre 0 et 9. si vous sélectionnez -0 alors il n'y aura pas de compression, c'est-à-dire pas de compression de fichiers sous Unix.

si vous allez sélectionner -9 forcera le programme zip à sélectionner la meilleure compression optimale pour tous les fichiers ou dossiers.

Exemple 3 :- Comment utiliser les niveaux de compression 0 et 9

dev@test:~$ zip -r -0 test.zip sample/

Sortie
ajout :échantillon/ (stocké 0 %)
ajout :échantillon/fichier2 (stocké 0 %)
ajout :échantillon/fichier1 (stocké 0 %)

la sortie montre, si je sélectionne 0 comme niveau de compression, il n'y a aucune compression pendant la compression des fichiers ou du dossier .

Par exemple -

dev@test:~$ zip -r -9 test sample/

Sortie
ajout :échantillon/ (stocké 0 %)
ajout :échantillon/fichier2 (dégonflé 69 %)
ajout :échantillon/fichier1 (dégonflé 69 %)
dev@test :~ $

si Zip trouve que ce fichier ne peut pas être compressé, il se contente de l'archiver et de le stocker tel quel sans compresser le fichier sous Linux.

J'ai parlé de bzip2 également dans mon introduction zip déclaration. bzip2 est également installé par défaut dans toutes les versions de Linux. Si vous souhaitez compresser le fichier à l'aide de la méthode bzip2, vous pouvez utiliser -Z.

Exemple 4 :- Comment compresser un fichier sous Linux à l'aide de l'utilitaire bzip2

dev@test:~$ zip -r -Z bzip2 test.zip sample/

Sortie
ajout :échantillon/ (stocké 0 %)
ajout :échantillon/fichier2 (bzippé 74 %)
ajout :échantillon/fichier1 (bzippé 74 %)
dev@ test :~$ ls test.zip
test.zip

Si vous comparez la sortie, le taux de compression a augmenté pour les mêmes fichiers de 69 % à 74 % en utilisant bzip2.

Ainsi, le bzippage des fichiers peut entraîner un gain d'espace supplémentaire mais changer le niveau de compression ou utiliser bzip2 pour économiser de l'espace entraîne une pénalité pour les ressources du processeur et la compression prendra plus de temps en cas de grand nombre de fichiers sous Linux.

Mais cela économisera certainement des ressources réseau si vous prévoyez de le transférer ou de l'envoyer sur Internet.

Compresser et chiffrer un fichier sous Linux

Souvent, vous devez stocker ou envoyer/transférer un fichier à quelqu'un et il peut contenir des données sensibles ou personnelles.

Pour éviter une mauvaise utilisation de ce fichier, vous pouvez toujours chiffrer ou activer le mot de passe sur le fichier d'archive en utilisant -e option .

Exemple 5 :- Comment activer le mot de passe sur le fichier zip sous Linux

dev@test:~$ zip -e test.zip sample/

Sortie demandant un mot de passe
Entrez le mot de passe :
Vérifiez le mot de passe :
ajout :sample/ (stocké 0 %)
dev@test :~$ ls sample
exemple/ test.zip

N'oubliez pas de partager le mot de passe avec le destinataire, si vous comptez l'envoyer à quelqu'un 🙂

Créer un fichier zip divisé sous Linux

Il peut arriver que vous ayez un gros fichier à archiver et que vous deviez le diviser en raison des limites de stockage ou de téléchargement sur le site FTP ou le fournisseur d'hébergement de fichiers.

Vous pouvez créer un fichier zip en utilisant l'option -s en indiquant la taille. Le multiplicateur peut être défini sur k(kilooctets), m(mégaoctets), t(téraoctets).

Exemple 6 :- Comment créer un fichier zip fractionné sous Linux

J'ai un fichier zip de image iso Ubuntu 20.04 avec le nom ubuntu.zip (2.5G) et je le diviserai en archive 1g fichiers.

dev@test:~/sample$ ls -ltrh ubuntu.zip 
-rw-r--r-- 1 dev dev 2.5G Jun 18 17:51 ubuntu.zip
dev@test:~/sample$ zip -s 1g ubuntu.zip --out split
copying: ubuntu-20.04-desktop-amd64.iso
dev@test:~/sample$

Sortie

dev@test :~/sample$ ls -ltrh split*
-rw-r--r-- 1 dev dev 1.0G Jun 18 18:03 split.z02
-rw-r--r-- 1 dev dev 504M 18 juin 18:04 split.zip
-rw-r--r-- 1 dev dev 1.0G 18 juin 18:04 split.z01

Jetez un oeil sur split.zip, split.z01 et split.z02

Maintenant, lorsque vous avez divisé le fichier à l'aide de zip et que vous envisagez de le rejoindre sur la cible. Ne vous inquiétez pas, je ne vous laisserai pas vous gratter la tête.

Exemple 7 :- Comment ajouter ou combiner un fichier zip fractionné sous Linux

Allez dans le répertoire où vous avez conservé les fichiers fractionnés

dev@test:~/sample$ ls -ltrh split*

Sortie
-rw-r--r-- 1 dev dev 1.0G Jun 18 18:03 split.z02
-rw-r--r-- 1 dev dev 504M Jun 18 18:04 split. zip
-rw-r--r-- 1 dev dev 1.0G 18 juin 18:04 split.z01

Rejoindre maintenant les fichiers zip fractionnés.

dev@test:~/sample$ cat split.z* > join.zip

Valider la taille en sortie

dev@test :~/sample$ ls -ltrh join.zip
-rw-r--r-- 1 dev dev 2.5G 18 juin 18:13 join.zip

Exemple 8 :- Comment mettre à jour un fichier zip sous Linux

supposons que vous ayez oublié d'ajouter un fichier dans un zip ou que vous souhaitiez ajouter d'autres fichiers à un zip existant, puis -u option peut aider. Dans cet exemple, je vais ajouter file4 à test.zip existant fichier.

dev@test:~$ zip -u test.zip file4

Sortie
ajout :fichier4 (dégonflé à 69 %)

Exemple 9 :- Comment exclure un fichier d'une archive zip sous Linux

Un scénario dans lequel vous avez beaucoup de fichiers dans un répertoire et vous souhaitez exclure certains fichiers de l'archivage zip. Option -x est le sauveur ici.

Actuellement, j'ai trois fichiers dans le répertoire sample

dev@test:~$ ls -ltrh sample/

total 264K
-rw-r--r-- 1 dev dev 88K 17 juin 21:51 fichier1
-rw-r--r-- 1 dev dev 88K 17 juin 23:21 fichier2
-rw-r--r-- 1 dev dev 88K 18 juin 18:20 file3

excluons fichier3 , seulement 2 fichiers archivés.

dev@test:~/sample$ zip test.zip * -x file3

Sortie
ajout :fichier1 (dégonflé à 69 %)
ajout :fichier2 (dégonflé à 69 %)
dev@test :~/sample$

Exemple 10 :-  Mode détaillé dans la compression de fichiers sous Linux

si vous voulez voir la progression, option -v connues sous le nom d'informations de version détaillées ou de diagnostic peuvent être utiles, en particulier lorsque vous travaillez avec un grand nombre de fichiers.

dev@test:~$ zip -v -r test.zip sample/

Sortie
ajout :sample/ (in=0) (out=0) (stocké 0 %)
ajout :sample/file3 (in=90082) (out=28359) (déflaté 69 %)
ajout :échantillon/fichier2 (entrée=90082) (sortie=28359) (déflaté 69 %)
ajout :échantillon/fichier1 (entrée=90082) (sortie=28359) (dégonflé 69 %)
total bytes=270246,pressed=85077 -> 69% d'économies
dev@test:~$

Exemple 11 :-  Utilisation de caractères génériques pour compresser des fichiers sous Linux

Le caractère générique le plus utilisé est un astérisque (*) dans ce monde, à mon avis, l'utilitaire Zip prend en charge ce caractère générique utile. Pas besoin de taper chaque nom de fichier.

dev@test:~/sample$ zip file.zip file*

Sortie
ajout :fichier1 (dégonflé à 69 %)
ajout :fichier2 (dégonflé à 69 %)
ajout :fichier3 (dégonflé à 69 %)
dev@test :~/sample$

Quelques problèmes courants et codes d'erreur lors de la compression sous Linux

État                                    sortie

             0    normal ; aucune erreur ou avertissement détecté , signifie que l'archivage est terminé

             2    fin de fichier zip inattendue sous Unix .

            11                                    lire ou rechercher une erreur, Impossible de lire le fichier

            12                                    zip n'a rien à voir, Il manque une action

            13                                    fichier zip manquant ou vide

            14                                     erreur d'écriture dans un fichier

Tutoriel vidéo

Pour faciliter la tâche "comment compresser un fichier sous Linux" pour les débutants, j'ai également créé une vidéo. Veuillez regarder, aimer et partager, si vous l'avez trouvé utile.
Ubuntu
  1. Que signifie "tty" ?

  2. J'ai besoin d'un bon outil de surveillance réseau ?

  3. Comment installer KDE Plasma 5.16 sur Ubuntu 16.04/Ubuntu 18.04, 19.04

  4. Comment installer le navigateur w3m sur Ubuntu 20.04

  5. Comment ouvrir le port ssh 22 sur Ubuntu 22.04 Jammy Jellyfish Linux

Configurer l'environnement de développement Ruby on Rails avec Docker et Docker Compose sur Ubuntu

Tutoriel Docker - Premiers pas avec Docker sous Linux

Comment installer PyCharm sur Ubuntu 22.04 Linux Desktop

10 exemples de commandes Linux Cat pour les débutants

Comment désactiver IPv6 sur CentOS 8 / RHEL 8

Installer des certificats SSL sur un serveur Windows