Options avancées de la commande unzip
Maintenant que vous maîtrisez les bases de l'extraction de fichiers ZIP, explorons quelques options plus avancées de la commande unzip
qui peuvent être utiles dans diverses situations.
Création d'un nouveau fichier ZIP pour l'entraînement
Créons un nouveau fichier ZIP contenant plusieurs fichiers pour tester les options avancées :
## Create a new directory for our files
mkdir -p testdir/subdir
## Create some sample files in different locations
echo "This is a file in the main directory." > testdir/main.txt
echo "This is a file in the subdirectory." > testdir/subdir/sub.txt
## Compress the directory with all its contents
zip -r testarchive.zip testdir
## Remove the original directory to simulate receiving only the ZIP file
rm -rf testdir
Maintenant, vous avez un fichier ZIP nommé testarchive.zip
qui contient une structure de répertoires avec des fichiers.
Pour obtenir une sortie plus détaillée pendant l'extraction, vous pouvez utiliser l'option -v
(verbose) :
unzip -v testarchive.zip
Cela affichera des informations détaillées sur chaque fichier de l'archive, notamment la méthode de compression, les tailles compressée et non compressée, etc.
Par défaut, unzip
extrait les fichiers dans le répertoire actuel. Pour extraire dans un répertoire différent, utilisez l'option -d
suivie du chemin du répertoire cible :
## Create a directory to extract to
mkdir extraction_target
## Extract the ZIP file to the new directory
unzip testarchive.zip -d extraction_target
Maintenant, le contenu de testarchive.zip
sera extrait dans le répertoire extraction_target
.
Si vous ne souhaitez extraire que certains fichiers d'une archive ZIP, vous pouvez spécifier les noms de fichiers après le nom de l'archive :
## First, let's list the contents to know what's available
unzip -l testarchive.zip
## Now, extract only the main.txt file
unzip testarchive.zip testdir/main.txt
Si vous êtes préoccupé par l'écrasement de fichiers existants lors de l'extraction, vous pouvez utiliser l'option -n
(never overwrite) :
unzip -n testarchive.zip
Avec cette option, unzip
n'extrait pas les fichiers qui écraseraient des fichiers existants portant le même nom.
Vérification des résultats
Vérifions ce que nous avons extrait :
## Check the extracted directory structure
ls -R testdir
## Check the extraction_target directory
ls -R extraction_target
Vous devriez voir la structure de répertoires et les fichiers que vous avez créés précédemment.
Ces options avancées vous donnent plus de contrôle sur la manière dont les fichiers sont extraits des archives ZIP, faisant de la commande unzip
un outil polyvalent pour gérer les fichiers compressés sous Linux.