Zip est une commande multiplateforme populaire utilisée pour compresser et archiver des données. La compression permet d'économiser de l'espace en réduisant la taille des données tandis que l'archivage facilite le transfert des données en combinant plusieurs fichiers ou répertoires en un seul fichier. Considérez, si nous devons transférer 5 fichiers sur Internet, chacun avec une taille de 50 mégaoctets ; transférer tous les fichiers un par un peut prendre beaucoup de temps. Compresser les fichiers pour réduire la taille jusqu'à 25 Mo, puis les archiver tous dans un seul fichier rendra le transfert des fichiers beaucoup plus rapide que lorsqu'ils ne sont pas compressés. Zip est l'utilitaire le plus utilisé pour archiver et compresser des fichiers, tandis que le décompresser est utilisé pour extraire et décompresser les fichiers compressés.
Dans cet article, nous examinerons les commandes zip et unzip sous Linux, ainsi que leurs options de ligne de commande et leurs exemples.
Conditions préalables
- Système Ubuntu ou Debian
- Utilitaires de compression et de décompression installés
Noter: Les commandes mentionnées dans cet article ont été testées sur Ubuntu 20.04 LTS (Fosse focale). Les mêmes commandes sont également applicables à la distribution Debian.
Installer Zip et Unzip
Par défaut, les packages zip et unzip sont installés dans les systèmes Ubuntu. Au cas où ceux-ci seraient absents de votre système, vous pouvez les installer facilement. Lancez le Terminal à l'aide du clavier Ctrl+Alt+T. Ensuite, pour installer zip, exécutez ce qui suit dans Terminal :
$ sudo apt installer zipPour installer unzip, exécutez la commande ci-dessous dans Terminal :
$ sudo apt installer décompresserDans certains cas, vous devrez peut-être compresser des fichiers :
- Pour économiser de l'espace de stockage, car la compression compresse la taille du fichier
- Transfert de fichiers volumineux par e-mail
- Chargement ou téléchargement de fichiers plus rapidement
- Pour économiser de la bande passante
Commande ZIP sous Linux
Pour créer un fichier zip, vous devrez fournir le nom de l'archive zippée et les fichiers qui doivent être inclus dans le zip.
$ zip options zip_file fichier1 fichier2…Zip fichier unique
Pour compresser un seul fichier nommé fichier de test.SMS; dans un fichier zip nommé test.Zip *: français, la commande serait :
$ test zip.fichier de test zip.SMS
La commande ci-dessus compressera le fichier spécifié dans le répertoire actuel tout en laissant le fichier d'origine derrière.
Pour confirmer si le fichier zip a été créé, exécutez la commande dans le terminal ci-dessous :
$ ls -l
Zipper plusieurs fichiers
Vous pouvez également compresser plusieurs fichiers avec la commande zip. Créons des fichiers nommés fichiertest1.SMS, fichiertest2.SMS, fichiertest3.SMS, et fichiertest4.SMS en utilisant la commande suivante dans le Terminal :
$ sudo touch fichier de test1.txt fichiertest2.txt fichier de test3.txt fichier de test4.SMSMaintenant, compressez ces fichiers dans un seul fichier, nommé des dossiers.Zip *: français, lancez la commande suivante dans le terminal :
$ fichiers zip.fichier de test zip1.txt fichiertest2.txt fichier de test3.txt fichier de test4.SMS
Vous pouvez également utiliser le caractère générique pour spécifier plusieurs fichiers ayant la même extension. Par exemple, pour compresser tous les fichiers se terminant par .txt dans un fichier zip, nommé files1.zip, exécutez la commande suivante dans le terminal :
$ fichiers zip1.Zip *: français *.SMS
Zipper un fichier dans un autre répertoire
Si vous devez compresser un fichier dans un répertoire autre que le répertoire actuel, utilisez la syntaxe suivante :
$ zip /chemin/vers/répertoire.zip_file nom de fichierPar exemple, pour zip fichier de test.SMS fichier dans Documents/docs/ répertoire nommé comme test.Zip *: français, la commande serait :
$ zip Documents/docs/test.fichier de test zip.SMS
Ajouter un fichier à un zip existant
Vous pouvez également ajouter un fichier à un fichier zip préexistant. Utilisez la syntaxe suivante pour ce faire :
$ zip -u zip_file nom de fichierDisons que vous avez un fichier zip (fichiers1.Zip *: français), et vous souhaitez inclure un autre fichier (fichiertest4.SMS) dans celui-ci, la commande, dans ce cas, serait :
$ zip -u fichiers1.fichier de test zip4.SMS
Supprimer un fichier d'un fichier zip
De même, vous pouvez également supprimer un fichier d'un fichier zip déjà existant. Utilisez la syntaxe suivante pour ce faire :
$ zip -d zip_file nom de fichierDisons que vous avez un fichier zip (fichiers1.Zip *: français), et vous souhaitez supprimer un fichier (fichiertest1.SMS) à partir de celui-ci, la commande, dans ce cas, serait :
$ zip -d fichiers1.fichier de test zip1.SMS
Zip des fichiers en mode silencieux
Si vous ne souhaitez pas afficher le résultat de la commande zip, utilisez l'option -q (silencieux) avec la commande zip comme suit :
$ zip -q zip_file nom de fichierPar exemple, lors de la compression du fichier de test.txt, vous pouvez supprimer la sortie avec la commande suivante :
$ zip -q test.fichier de test zip.SMSDans la capture d'écran suivante, vous pouvez voir la sortie de la commande zip qui n'a pas été affichée sur le terminal.
Suppression des fichiers d'origine après la compression
Par défaut, zip conserve le fichier d'origine avec le fichier compressé. Cependant, en utilisant le -m option avec la commande zip, vous pouvez supprimer les fichiers d'origine après avoir créé leur fichier zippé.
$ zip -m zip_file nom de fichierPar exemple, la commande suivante supprimera le fichier de test.SMS après avoir créé son fichier zippé, test.Zip *: français.
$ zip -m test.fichier de test zip.SMS
Répertoires zip
Pour compresser des répertoires dans votre système Linux, utilisez le -r option (récursive) avec la commande zip. le -r L'option compressera les répertoires de manière récursive, je.e., y compris le contenu des sous-répertoires.
$ zip -r zip_file nom de répertoirePar exemple, pour compresser le Documents répertoire récursivement vers le test.Zip *: français fichier, la commande serait :
$ zip -r test.zip Documents/Cette commande va compresser le répertoire Documents, ainsi que tous les sous-répertoires et les fichiers qu'il contient.
Réglage du niveau de compression
Vous pouvez également définir le niveau de compression à appliquer aux fichiers compressés. Le niveau de compression varie de 0 à 9, où 6 est la valeur par défaut, 0 est la valeur la plus basse et 9 est la valeur de compression la plus élevée.
Par exemple, pour compresser tous les fichiers texte dans fichiers1.Zip *: français en utilisant la valeur de compression la plus élevée, la commande serait :
$ zip -9 fichiers1.Zip *: français *.SMS
De même, pour compresser tous les fichiers texte dans fichiers2.Zip *: français en utilisant la valeur de compression la plus faible -0, la commande serait :
Ce qui suit est la sortie du ls commande après avoir créé les fichiers zip. Si nous comparons les tailles des deux fichiers zip, vous pouvez voir les fichiers1.zip, qui a été compressé avec le niveau de compression 9, a une taille inférieure à celle de files2.zip, qui a été compressé en utilisant le niveau de compression 0.
Créer un fichier zip protégé par mot de passe
Vous pouvez également créer des fichiers zip protégés par mot de passe en utilisant le -e avec la commande zip comme suit :
$ zip -e zip_file nom de fichierPar exemple, la commande suivante compressera tous les fichiers texte dans fichiers3.Zip *: français, puis demander un mot de passe. Définissez un mot de passe et appuyez sur Entrée. Vérifiez ensuite ce mot de passe en le retapant et en appuyant sur Entrée.
$ zip -e fichiers3.Zip *: français *.SMS
Ajouter des mots de passe aux fichiers zip avec le zipcloak
Dans l'exemple précédent, nous avons créé un fichier zip protégé par mot de passe. Mais que faire si vous avez créé un fichier zip et oublié de définir le mot de passe. Avec la commande zipcloak, vous pouvez définir un mot de passe pour un fichier zip à tout moment.
$ zipcloak zip_filePar exemple, pour définir un mot de passe pour un fichier zip déjà créé nommé des dossiers.Zip *: français, la commande serait :
$ fichiers zipcloak.Zip *: françaisUn mot de passe vous sera demandé. Tapez n'importe quel mot de passe et appuyez sur Entrer. Vérifiez ensuite ce mot de passe en le retapant et en appuyant sur Entrer.
Afficher les détails du fichier avec la commande zipdetails
La commande Zipdetails affiche des informations détaillées sur le fichier compressé. Les informations qu'il affiche concernent la structure de l'enregistrement plutôt que les données compressées. Pour trouver des informations détaillées sur le fichier compressé, saisissez zipdetails suivi du nom du fichier compressé, comme indiqué ci-dessous :
$ zipdetails fichier_zipPar exemple, pour trouver des informations détaillées sur un fichier compressé, test.Zip *: français, la commande serait :
$ zipdétails test.Zip *: françaisDans la sortie, vous verrez beaucoup d'informations sur votre fichier zippé.
Rechercher dans le fichier avec la commande zipgrep
La commande zipgrep nous permet de rechercher un texte donné dans les fichiers à l'intérieur du fichier zippé sans l'extraire. Si un fichier zip est protégé par mot de passe, vous devrez d'abord saisir le mot de passe correspondant. Pour rechercher du texte dans le fichier zip, utilisez la syntaxe suivante :
$ zipgrep expression zip_filePar exemple, pour rechercher quels fichiers dans le fichier zip test.Zip *: français contient le mot passerelle, la commande serait :
$ test de la passerelle zipgrep.Zip *: françaisLa sortie est la suivante. Vous pouvez voir deux fichiers iplist.texte et iplist à l'intérieur de test.Zip *: français contient le mot passerelle.
Pour rechercher un texte à partir d'un fichier spécifique à l'intérieur du fichier zip, vous pouvez également l'ajouter :
Par exemple, la commande suivante recherchera le mot passerelle à partir d'un seul fichier spécifique iplist à l'intérieur du fichier zip test.Zip *: français:
$ test de la passerelle zipgrep.zip Document/docs/iplist
Afficher les informations avec la commande zipinfo
La commande zipinfo dans Linux répertorie les fichiers contenus dans un fichier zip avec leurs autorisations, le type de compression, la taille d'origine, la date et l'horodatage. Pour afficher des informations sur un fichier ZIP spécifique, saisissez zipinfo suivi du nom du fichier, comme indiqué ci-dessous :
$ zipinfo nom de fichierLa commande suivante affichera des informations sur le fichier zip fichiers1.Zip *: français:
$ fichiers zipinfo1.Zip *: français
Divisez le fichier avec la commande zipsplit
Parfois, la taille du fichier zip est trop grande pour que vous ne puissiez pas le télécharger ou l'envoyer en pièce jointe en raison de restrictions de taille. Avec la commande zipsplit, vous pouvez diviser les fichiers zip en fichiers plus petits qui sont plus faciles à transférer. Pour diviser un fichier zip en fichiers plus petits, dont la taille ne dépasse pas
le
Par exemple, la commande ci-dessous divisera test.Zip *: français en fichiers plus petits dont la taille ne dépasse pas 104857600 octets (104 Mo).
$ zipsplit -n 104857600 test.Zip *: françaisVoici le résultat de la commande ci-dessus. le test.Zip *: français fichier est divisé en trois fichiers, qui sont nommés séquentiellement comme essai1.Zip *: français, test2.Zip *: français, et test3.Zip *: français, respectivement.
Si vous exécutez le ls commande, vous verrez les trois fichiers zip séparés, ainsi que le fichier zip d'origine.
Ajouter ou afficher des commentaires dans un fichier zip avec zipnote
Avec la commande zipnote, vous pouvez ajouter, afficher et modifier les commentaires dans votre fichier zip. Pour afficher les commentaires, utilisez la commande suivante :
$ zipnote fichier_zipRemplace le Zip *: français déposer avec le nom réel de votre fichier zip.
S'il n'y a pas de commentaires, vous verrez la vue par défaut suivante :
Pour ajouter des commentaires, vous devrez d'abord rediriger la sortie de zipnote au fichier de commentaires. Utilisez la commande suivante pour le faire :
Par exemple, pour ajouter des commentaires à fichiers1.Zip *: français, la commande serait :
$ fichiers zipnote1.zip > commentairesMaintenant, modifiez le commentaires fichier à l'aide de la commande suivante :
$ sudo nano commentairesPour chaque fichier, ajoutez vos commentaires au-dessus des lignes qui disent @ (commentaire au dessus de cette ligne),puis enregistrez et quittez le fichier. Nous avons ajouté deux commentaires dans le fichier de commentaires, comme le montre la capture d'écran ci-dessous.
Écrivez maintenant les commentaires dans votre fichier zip avec la commande suivante :
Dans notre cas, la commande serait ;
$ zipnote -w fichiers1.Zip *: français < commentsMaintenant, vous pouvez vérifier si les commentaires ont été ajoutés en exécutant la commande suivante dans Terminal :
$ zipnote fichier_zip
Voir aide
Pour afficher l'aide concernant la commande zip, utilisez la commande suivante :
$ zip --helpVous pouvez également visiter la page de manuel de l'utilitaire zip à l'aide de la commande suivante :
$ homme zipDécompresser la commande sous Linux
Avec la commande unzip, vous pouvez facilement extraire le contenu d'un fichier zip. Pour décompresser un fichier, utilisez la syntaxe suivante :
$ options de décompression zip_fileDécompressez les fichiers zip uniques
Pour décompresser un seul fichier zip, disons test.zip, la commande serait :
Test de décompression de $.Zip *: françaisIl décompressera le fichier dans le répertoire courant.
Décompressez un fichier dans un autre répertoire
Vous pouvez également décompresser un fichier dans un autre répertoire que le répertoire actuel à l'aide de l'option -d comme suit :
$ unzip zip_file -d /chemin/vers/répertoirePour décompresser un fichier zip, test.Zip *: français à Documents, répertoire, la commande serait :
Test de décompression de $.zip -d Documents/
Décompressez plusieurs fichiers
Considérez qu'il existe plusieurs fichiers zip dans un répertoire actuel que vous souhaitez décompresser. Vous pouvez tous les décompresser à l'aide d'une seule commande comme suit :
$ décompresser '*.Zip *: français'Cette commande décompressera tous les fichiers zip résidant dans votre répertoire actuel.
Supprimer la sortie lors de l'utilisation de décompresser
Semblable à la commande zip, vous pouvez également masquer la sortie de la commande unzip en utilisant le -q option comme suit :
$ unzip -q zip_file
Exclure des fichiers à l'aide de décompresser
Si vous souhaitez décompresser un fichier zip mais ne souhaitez pas extraire un fichier spécifique, utilisez le -X option ci-dessous :
$ unzip zip_file -x nom de fichierPar exemple, nous avons un zip test de filet.Zip *: français contenant trois fichiers. La commande suivante décompressera tous les fichiers sauf le seul fichier rapport.SMS:
Test de décompression de $.zip -x rapport.SMS
Décompressez les fichiers zip protégés par mot de passe
Pour décompresser un fichier zip protégé par mot de passe sans invite, utilisez -P option, suivie du mot de passe du fichier :
$ décompresser -PPar exemple, nous avons un fichier zip, test.Zip *: français, qui est protégé par le mot de passe "étain". Pour extraire ce fichier, la commande serait :
$ unzip -P tin test.Zip *: français
Écraser les fichiers zip
Si vous décompressez un fichier à un emplacement où les fichiers extraits existaient déjà, vous serez invité à : écraser le fichier actuel, ignorer la décompression du fichier actuel, écraser tous les fichiers, ignorer la décompression de tous les fichiers ou renommer le fichier.
Pour écraser tous les fichiers existants sans invite, utilisez le -o option comme suit :
Lister le contenu d'un zip
En utilisant le -je avec la commande unzip, vous pouvez lister le contenu d'un fichier zip sans l'extraire.
$ unzip -l fichier_zipExemple:
$ unzip -l test.Zip *: françaisCe qui suit est la sortie de la commande ci-dessus qui répertorie les fichiers contenus dans le fichier zip test.Zip *: français, ainsi que leurs noms, la taille du fichier d'origine, la date et les horodatages.
Afficher les informations détaillées
Pour afficher des informations détaillées sans extraire le fichier zip, utilisez l'option -v comme suit :
$ unzip -v zip_fileExemple:
$ unzip -v test.Zip *: françaisCe qui suit est la sortie de la commande ci-dessus qui répertorie les fichiers contenus dans le test.Zip *: français, ainsi que leurs noms, la taille du fichier d'origine, la taille compressée, la méthode de compression, le taux de compression, la date et les horodatages.
Recherche d'erreurs dans une archive
Avec l'option -t dans la commande unzip, vous pouvez vérifier si un fichier zip est valide et ne contient aucune erreur.
$ unzip -t test1.Zip *: françaisExemple:
$ unzip -t test1.Zip *: françaisLa commande ci-dessus vérifie les erreurs dans le essai1.Zip *: français fichier et affiche les résultats. La sortie suivante montre qu'il n'y a pas d'erreur dans le fichier compressé.
Voir aide
Pour afficher l'aide concernant la commande unzip, utilisez la commande suivante :
$ décompresser --helpVous pouvez également visiter la page de manuel de l'utilitaire de décompression à l'aide de la commande suivante :
$ homme décompresserConclusion
C'est tout ce que vous devez savoir pour maîtriser les commandes zip et unzip sous Linux. Dans cet article, nous avons discuté en détail de l'utilisation des commandes zip et unzip sous Linux ainsi que diverses options de ligne de commande et exemples.