Skip to main content

Comment compresser des fichiers à l'aide de la ligne de commande Linux

Accès à l'archive de mes commandes (Mai 2024)

Accès à l'archive de mes commandes (Mai 2024)

Table des matières:

Anonim

Il existe différentes manières de compresser des fichiers à l'aide de la ligne de commande Linux. Cet article contient des exemples pratiques qui expliquent comment utiliser la commande zip pour compacter et organiser des fichiers dans votre système de fichiers.

Les fichiers compressés sont utilisés lorsque vous devez économiser de l'espace et copier des fichiers volumineux d'un endroit à un autre.

Si vous avez 10 fichiers de 100 mégaoctets et que vous devez les transférer sur un site FTP, le transfert peut prendre un temps considérable en fonction de la vitesse de votre processeur.

Si vous compressez les 10 fichiers dans une archive compressée unique et que la compression réduit la taille du fichier à 50 Mo par fichier, vous ne devez alors transférer que la moitié du nombre de données.

Comment créer une archive de tous les fichiers d'un dossier

Imaginez que vous ayez un dossier de chansons contenant les fichiers MP3 suivants:

AC / DC autoroute de l'enfer
Prowler de nuit.mp3
Amour affamé man.mp3
Obtenez-le chaud.mp3
Marche sur toi.mp3
Route vers l'enfer.mp3
Si vous voulez du sang, vous en avez.mp3
Montrer dans flames.mp3
Touchez trop.
Battre autour de la brousse.mp3
Girls Got Rhythm.mp3

Cette commande Linux simple qui explique comment créer une archive de tous les fichiers du dossier actuel, appelée ACDC_Highway_to_Hell.zip:

zip ACDC_Highway_to_Hell *

Texte fait défiler l'écran pour afficher les fichiers au fur et à mesure de leur ajout.

Comment inclure des fichiers cachés dans une archive

La commande précédente convient parfaitement pour l'archivage de tous les fichiers d'un dossier, mais elle n'inclut que les fichiers non masqués.

Ce n'est pas toujours aussi simple. Imaginez que vous souhaitiez compresser votre dossier personnel afin de pouvoir le sauvegarder sur un lecteur USB ou un disque dur externe. Votre dossier de départ comprend des fichiers cachés.

Pour compresser tous les fichiers, y compris les fichiers cachés dans un dossier, exécutez la commande suivante:

zip home *. *

Cela crée un fichier appelé home.zip avec tous les fichiers du dossier de départ.

(Vous devez être dans le dossier personnel pour que cela fonctionne). Le problème avec cette commande est qu'elle n'inclut que les fichiers du dossier de départ et non les dossiers, ce qui nous amène à l'exemple suivant.

Comment archiver tous les fichiers et sous-dossiers dans un fichier Zip

Pour inclure tous les fichiers et sous-dossiers dans une archive, exécutez la commande suivante:

zip -r la maison.

Comment ajouter de nouveaux fichiers à une archive compressée existante

Si vous souhaitez ajouter de nouveaux fichiers à une archive existante ou mettre à jour les fichiers d'une archive, utilisez le même nom pour le fichier d'archive lors de l'exécution de la commande zip.

Par exemple, imaginons que vous disposiez d'un dossier de musique contenant quatre albums et que vous créiez une archive appelée music.zip à conserver en tant que sauvegarde. Maintenant, imaginez une semaine plus tard que vous téléchargez deux nouveaux albums. Pour ajouter les nouveaux albums au fichier zip, exécutez simplement la même commande que celle de la semaine précédente.

Pour créer l’archive musicale originale, exécutez le code suivant:

zip -r musique / accueil / votrenom / musique /

Pour ajouter de nouveaux fichiers à l'archive, exécutez à nouveau la même commande.

Si le fichier zip contient une liste de fichiers et qu'un des fichiers du disque a été modifié, le fichier modifié est mis à jour dans le fichier zip.

Comment mettre à jour les fichiers existants dans une archive zippée

Si vous avez un fichier zip censé contenir les mêmes noms de fichier à chaque fois et que vous souhaitez le mettre à jour avec les modifications apportées à ces fichiers, -F switch vous aide à le faire.

Par exemple, imaginons que vous disposiez d’un fichier compressé contenant les fichiers suivants:

/ home / votrenom / documents / fichier1
/ home / votrenom / documents / fichier2
/ home / votrenom / documents / fichier3
/ home / votrenom / documents / fichier4
/ home / votrenom / documents / fichier5
/ home / votrenom / documents / fichier6

Maintenant, imaginez que pendant la semaine, vous avez ajouté deux nouveaux fichiers et modifié deux fichiers de sorte que le dossier / home / votrenom / documents ressemble maintenant à ceci:

/ home / votrenom / documents / fichier1
/ home / votrenom / documents / fichier2
/ home / votrenom / documents / fichier3
/ home / votrenom / documents / file4 (mis à jour)
/ home / votrenom / documents / file5 (mis à jour)
/ home / votrenom / documents / fichier6
/ home / votrenom / documents / fichier7
/ home / votrenom / documents / fichier8

Lorsque vous exécutez la commande suivante, le fichier zip contient les fichiers mis à jour (fichier4 et fichier5), mais les fichiers 7 et 8 ne seront pas ajoutés.

zip nomfichier -f -r / r / home / votrenom / documents

Comment supprimer des fichiers d'une archive compressée

Vous avez donc créé un fichier zip volumineux contenant des centaines de fichiers et vous réalisez maintenant que le fichier zip contient quatre ou cinq fichiers dont vous n'avez pas besoin. Sans avoir à compresser tous ces fichiers à nouveau, vous pouvez exécuter la commande zip avec le -ré commutateur comme suit:

zip zipfilename -d nom du fichier dans l'archive

Par exemple, si vous avez un fichier dans l'archive portant le nom home / documents / test.txt, vous le supprimez à l'aide de cette commande:

zip zipfilename -d home / documents / test.txt

Comment copier des fichiers d'un fichier zip à un autre

Si vous avez des fichiers dans un fichier zip et que vous voulez les copier dans un autre fichier zip sans les extraire au préalable et les reripper, utilisez la commande -u commutateur.

Supposons que vous avez un fichier zip appelé "variousmusic.zip" avec de la musique de divers artistes, dont AC / DC. Vous pouvez copier les morceaux AC / DC du fichier variousmusic.zip dans votre fichier ACDC.zip à l’aide de la commande suivante:

zip diversmusic.zip -U --out ACDC.zip "Back_In_Black.mp3"

La commande ci-dessus copie le fichier "Back_In_Black.mp3" de variousmusic.zip dans ACDC.zip.Si le fichier zip que vous copiez n'existe pas, il est créé.

Comment utiliser la correspondance de modèle et la tuyauterie pour créer une archive

Le commutateur suivant est très utile car il vous permet d’utiliser la sortie d’autres commandes pour insérer des fichiers dans votre fichier zip. Supposons que vous souhaitiez créer un fichier nommé lovesongs.zip, qui contient toutes les chansons dont le titre contient le mot amour.

Pour trouver les fichiers avec l'amour dans le titre, vous pouvez utiliser la commande suivante:

trouver / home / votrenom / Music -name * love *

La commande ci-dessus n'est pas parfaite à 100%, car elle contient également des mots tels que "trèfle", mais vous en avez une idée. Pour ajouter tous les résultats renvoyés par la commande ci-dessus dans un fichier zip appelé lovesongs.zip, exécutez la commande suivante:

trouver / home / votrenom / Music -name * love * | zip lovesongs.zip - @

Comment créer une archive fractionnée

Si vous sauvegardez votre ordinateur mais que le seul support disponible pour la sauvegarde est un ensemble de DVD vierges, vous avez le choix. Vous pouvez conserver des fichiers zippés jusqu'à ce que le fichier zip atteigne 4,8 Go et graver le DVD. Vous pouvez également créer un fichier appelé une archive divisée, qui continue de créer de nouvelles archives dans un jeu après avoir atteint la limite spécifiée.

Par exemple:

zip mymusic.zip -r / home / dossier / Musique -s 670m

Comment personnaliser le rapport d'avancement du processus de compression

Il existe différentes manières de personnaliser la sortie qui apparaît pendant la compression.

Les commutateurs disponibles sont les suivants:

  • -db = affiche combien d'octets ont été compressés et combien restent à parcourir
  • -dc = affiche le nombre de fichiers compressés et le nombre de fichiers restants à parcourir
  • -dd = affiche des points pour chaque 10 Mo de fichier compressé
  • -ds = définit la fréquence d'affichage des points
  • -du = affiche la taille non compressée de chaque fichier

Par exemple:

zip nomfichierzip.zip -dc -r / home / musique

Comment réparer un fichier Zip

Si vous avez une archive zip qui est cassée, vous pouvez essayer de la réparer en utilisant le -F commande et si cela échoue, le FF commander.

Ceci est utile si vous avez créé une archive fractionnée à l’aide de la commande -s commutateur, et vous avez perdu l'un des fichiers d'archive.

Par exemple, essayez d'abord celui-ci:

zip -F monfichier.zip --out monfichierfixé.zip

et alors

zip -FF nomfichier.zip --out nomfichierfixé.zip

Comment chiffrer une archive

Si vous souhaitez stocker des informations sensibles dans un fichier zip, utilisez le -e commande pour le chiffrer. Vous êtes invité à entrer un mot de passe et à le répéter.

Par exemple:

zip nomfichier.zip -r / home / wikileaks -e

Comment montrer ce qui sera compressé

Si vous savez que vous allez créer une archive volumineuse, assurez-vous que les fichiers appropriés vont être ajoutés au fichier zip. Vous pouvez voir les résultats attendus d’une commande zip en spécifiant le -sf commutateur.

Par exemple:

zip nomfichier.zip -r / home / musique / -sf

Comment tester une archive

Après avoir sauvegardé les fichiers dans un fichier zip, il est tentant de gagner de l'espace disque en supprimant les fichiers d'origine. Avant de faire cela, c'est une bonne idée de tester le bon fonctionnement du fichier zip.

Vous pouvez utiliser le -T passer à tester que le fichier zip est valide.

Par exemple:

zip nomfichier.zip -T

La sortie de cette commande quand une archive est invalide peut ressembler à ceci:

  • avertissement zip: signature de fin manquante - probablement pas un fichier zip

N'oubliez pas que vous pouvez essayer la commande -F pour réparer les fichiers zip cassés.

Il est à noter que le -T peut produire des faux positifs en indiquant qu'un fichier zip est corrompu même si vous l'ouvrez, vous pouvez extraire tous les fichiers.

Comment exclure des fichiers

Parfois, vous souhaitez exclure certains fichiers d'un fichier zip. Par exemple, si vous copiez les fichiers à partir de votre téléphone ou de votre appareil photo numérique, vous disposez d’un mélange de vidéos et d’images. Vous voudrez peut-être compresser les photos sur photos.zip et les vidéos sur videos.zip.

Voici un moyen d'exclure les vidéos lors de la création de photos.zip

zip photos.zip -r / home / photos / -x * .mp4

Comment spécifier le niveau de compression

Lorsque vous compressez des fichiers dans un fichier zip, le système décide de compresser le fichier ou de le stocker. Les fichiers MP3, par exemple, sont déjà compressés, il est donc inutile de les compresser davantage; ils sont généralement stockés tels quels dans un fichier zip.

Vous pouvez toutefois spécifier un niveau de compression compris entre 0 et 9 pour compresser davantage un fichier. Cela prend plus de temps, mais cela peut permettre de réaliser d'importantes économies d'espace.

zip myfiles.zip -r / home -5