Décompressez ou décompressez simultanément plusieurs fichiers dans Debian 10
La compression de fichiers est un moyen de créer des archives qui nous aident à gagner du temps, à créer de l'espace et à télécharger et transférer des logiciels et des données plus rapidement. Vous pouvez utiliser un fichier compressé pour distribuer des fichiers associés sur Internet, tous compressés en un seul fichier, sans aucune perte de données. Si vous avez besoin d'espace sur votre système ou sur un périphérique de stockage externe, vous pouvez compresser des fichiers en fichiers archivés plus petits. Parfois, nous devons extraire plusieurs fichiers compressés et rarouillés à la fois, tous situés dans un seul dossier. Le faire via l’interface utilisateur Linux est assez simple ; tout ce que vous avez à faire est de sélectionner tous les fichiers que vous souhaitez extraire, de cliquer avec le bouton droit et d'utiliser l'option d'extraction pour les extraire complètement. La vraie affaire, c'est lorsque nous voulons effectuer la même tâche via la ligne de commande. Il peut s'avérer assez long, et franchement illogique, d'extraire un à un en entrant une à une les commandes d'extraction de fichiers. Voici la boucle for du bash à sauver. Vous pouvez l'utiliser pour effectuer plusieurs opérations similaires à la fois.
Cet article décrit comment utiliser la boucle for dans le shell bash pour extraire plusieurs fichiers des types suivants via la ligne de commande Debian :
- Fichiers compressés
- Fichiers Tar.xz
- Fichiers RAR
- fichiers 7z
Nous avons exécuté les commandes et procédures mentionnées dans cet article sur un système Debian 10 Buster. Nous utilisons l'application Terminal comme ligne de commande Debian. Vous pouvez l'ouvrir via la recherche du lanceur d'applications comme suit :
Le lanceur d'applications est accessible à l'aide de la touche Windows/Super de votre clavier.
Décompressez plusieurs fichiers à la fois
Supposons qu'un dossier, un dossier « zip_files » dans notre cas, contienne plusieurs fichiers zippés et que nous souhaitions les extraire simultanément.
Voici comment utiliser la boucle for pour simplifier la tâche :
for z in *.zip
do
unzip $z;
done
Voici comment vous pouvez réaliser la même tâche avec une seule commande :
for z in *.zip; do unzip "$z"; done
Extraire plusieurs fichiers tar.xz à la fois
Supposons qu'un dossier contienne plusieurs fichiers tar.xz et que nous souhaitions les extraire simultanément.
Voici comment utiliser la boucle for pour simplifier la tâche :
for z in *.tar.xz
do
tar -xf $z;
done
Voici comment vous pouvez réaliser la même tâche avec une seule commande :
for z in *.tar.xz; do tar -xf "$z"; done
Extraire plusieurs fichiers à la fois
Utilisez la commande suivante pour extraire plusieurs fichiers rar à la fois.
for z in *.rar
do
unrar e $z;
done
Ou,
for f in *.rar; do unrar e “$f”; done
Extraire plusieurs fichiers 7z à la fois
Utilisez la commande suivante pour extraire plusieurs fichiers 7z à la fois.
for z in *.7z
do
7z e $z;
done
Ou,
for z in *.7z; do 7z e "$z"; done
Grâce à l'utilisation de la boucle bash for, vous pouvez effectuer la tâche fastidieuse d'extraire plusieurs fichiers compressés, en même temps. Cette petite compétence que vous avez apprise dans cet article s’avère particulièrement utile lorsque nous devons extraire simultanément jusqu’à des centaines de fichiers compressés. Non seulement pour l'extraction de fichiers, mais vous pouvez également utiliser la puissance de la boucle bash « for » pour effectuer diverses autres tâches similaires qui peuvent prendre plus de temps lorsque vous les exécutez une par une.