Guide complet de la commande Linux unzip : de la décompression à la résolution des problèmes d'encodage

Présentation

Découvrez l’utilisation de base et les options indispensables de la commande unzip, fréquemment employée pour extraire des fichiers ZIP sous Linux. Ce guide vous accompagne pas à pas, de la prévisualisation de la liste des fichiers à l’extraction dans un dossier spécifique, jusqu’à la résolution des caractères corrompus issus de fichiers Windows.

Installation du paquet unzip et préparation des fichiers d’archive de test

Afin de pouvoir créer et décompresser des archives sous Ubuntu, installez les paquets requis à l’aide de la commande sudo apt-get update -qq && sudo apt-get install -y unzip zip.

sudo apt-get update -qq && sudo apt-get install -y unzip zip

Exécutez la commande mkdir -p ~/unzip-demo && cd ~/unzip-demo pour créer un espace de travail dédié aux exercices pratiques et vous y déplacer.

mkdir -p ~/unzip-demo && cd ~/unzip-demo

Exécutez la commande echo 'Hello Linux' > file1.txt && echo 'Config Content' > config.cfg pour créer un fichier texte et un fichier de configuration d’exemple servant au test de compression.

echo ‘Hello Linux’ > file1.txt && echo ‘Config Content’ > config.cfg

Exécutez la commande zip -r sample.zip file1.txt config.cfg pour regrouper les fichiers d’exemple de test en une seule archive compressée.

zip -r sample.zip file1.txt config.cfg

Prévisualiser le contenu sans décompresser (unzip -l)

Exécutez la commande cd ~/unzip-demo pour accéder au répertoire de travail contenant les fichiers de test.

cd ~/unzip-demo

La commande unzip -l sample.zip permet de vérifier au préalable la liste des fichiers contenus dans l’archive, ainsi que leur taille et leur date de modification, sans procéder à l’extraction effective.
Elle est particulièrement pratique pour inspecter en toute sécurité la structure interne et l’espace disque nécessaire avant de décompresser une archive volumineuse.

unzip -l sample.zip

Extraire vers un répertoire spécifique et contrôler l’écrasement des fichiers existants (unzip -d, -o)

Exécutez la commande cd ~/unzip-demo pour accéder au répertoire de travail contenant l’archive à décompresser.

cd ~/unzip-demo

Exécutez la commande mkdir -p ./extracted afin de créer un répertoire de destination destiné à recevoir les fichiers extraits.

mkdir -p ./extracted

La commande unzip sample.zip -d ./extracted extrait le contenu de l’archive dans le répertoire ./extracted spécifié avec l’option -d.
Elle s’avère très utile pour organiser proprement vos fichiers dans un emplacement dédié sans encombrer le répertoire de travail actuel.

unzip sample.zip -d ./extracted

La commande unzip -o sample.zip -d ./extracted force l’écrasement des fichiers existants sans demander de confirmation à l’utilisateur lors de l’extraction.
On l’utilise principalement dans les scripts et les environnements de déploiement automatisés pour éviter que l’exécution ne soit interrompue par des invites de confirmation.

unzip -o sample.zip -d ./extracted

Exécutez la commande ls -la ./extracted pour lister les fichiers et leurs attributs détaillés afin de vous assurer que l’extraction s’est bien déroulée dans le répertoire cible.

ls -la ./extracted

Extraire uniquement des fichiers spécifiques

Exécutez la commande cd ~/unzip-demo pour accéder au répertoire de travail contenant l’archive à décompresser.

cd ~/unzip-demo

Exécutez la commande mkdir -p ./selective afin de créer un répertoire de destination pour stocker séparément les fichiers extraits de manière ciblée.

mkdir -p ./selective

La commande unzip sample.zip file1.txt -d ./selective extrait uniquement le fichier file1.txt spécifié sans décompresser l’ensemble de l’archive.
Cela est particulièrement utile pour extraire et vérifier rapidement un fichier de configuration spécifique ou un fichier journal depuis une archive volumineuse.

unzip sample.zip file1.txt -d ./selective

Exécutez la commande ls -la ./selective pour examiner la liste des fichiers et leurs détails dans le répertoire de destination et vous assurer que seul le fichier ciblé a été extrait.

ls -la ./selective

Prévenir la corruption des noms de fichiers coréens compressés sous Windows (unzip -O CP949)

Exécutez la commande cd ~/unzip-demo pour vous rendre dans le répertoire de travail contenant l’archive à décompresser.

cd ~/unzip-demo

Exécutez la commande mkdir -p ./korean-test pour créer un répertoire cible destiné à conserver en toute sécurité les fichiers extraits.

mkdir -p ./korean-test

La commande unzip -O CP949 sample.zip -d ./korean-test décompresse l’archive dans le dossier ./korean-test sans altérer les noms de fichiers coréens, en appliquant l’encodage CP949 (EUC-KR) par défaut de Windows.
Elle résout efficacement les problèmes d’affichage des noms de fichiers causés par la différence de jeux de caractères entre Windows et Linux.

unzip -O CP949 sample.zip -d ./korean-test

Exécutez la commande ls -la ./korean-test pour vérifier que les fichiers ont bien été extraits dans le répertoire de destination spécifié.

ls -la ./korean-test

Nous avons passé en revue les astuces essentielles de la commande unzip sous Linux, depuis la décompression standard jusqu’à la résolution des erreurs d’encodage de caractères.
Mettez ces options à profit pour manipuler vos archives efficacement dans le terminal, sans encombre et sans problème d’encodage.