Decompresser fichiers et garder arboresence

Résolu
snyder84 -  
zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Sur mon ftp j'ai un dossier qui contient un dossier dans lequel se trouve de nombreux dossiers contenant chacun plusieurs fichiers compressés en zip, donc:
/root/octobre/01/fichiers zip
-----------------------/02/fichiers zip , etc...
j'ai besoin de décompresser ces fichiers mais ils doivent garder leurs arborescences, chaque dossiers et sous-dossiers leurs fichiers.
Avec les commandes de décompressions classqiue tout se met à la racine du dossier, donc tout est mélangé.
Si quelqu'un peut me donner la commande qui évite ce souci, merci beaucoup

Configuration: Windows / Chrome 77.0.3865.90

3 réponses

  1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 503
     
    Salut,
    Avec les commandes de décompressions classiques
    C'est à dire ? Quelle(s) commande(s) ?

    Un exemple d'arborescence existante et souhaitée serait le bienvenu…

    0
    1. snyder84
       
      slt, je me suis placé dans mon dossier contenant mes fichiers zip et j'ai fais un essai sur un seul avec la commande unzip, et il m'a tout décompressé à la racine du dossier des fichiers zip.Moi j'aurai voulu qu'il crée un dossier du nom du zip et les fichiers à l'intérieur, merci .
      0
      1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 503 > snyder84
         
        unzip dossier.zip -d nouveau_nom
        0
    2. snyder84
       
      merci cela fonctionne bien, mais dans mon dossier j'ai 51 sous-dossiers contenant chacun plusieurs zip, si je l'ai fais un par un je vais y passer le week-end, cela n'est pas possible de tout faire en une fois? Merci encore pour ton aide
      0
      1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 503 > snyder84
         
        cela n'est pas possible de tout faire en une fois?
        Sûrement, avec un script qui boucle sur chaque .zip.

        Mais bon, faudrait voir l'arborescence de départ…
        Savoir si tu veux chaque .zip dans un dossier du même nom ou bien tous dans le dossier de départ ?
        0
  2. snyder84
     
    l'essentiel est que chaque dossier porte le nom du zip après je m'en arrange de les déplacer au besoin
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 503
       
      Yapluka… t'atteler à la tâche ;-))

      Pour info, l'option "-d" de la commande
      unzip
      , je l'ai trouvé en jetant un œil à la page de man.

      L'avais-tu consultée avant de venir poser ta question ?
      0
  3. snyder84
     
    j'ai finalement trouvé une commande qui fait exactement ce qu'il me fallait,
    while read file
    do
    folder="${file%.*}"
    unzip -o -d "${folder}" "${file}"
    done < <(find . -name "*.zip")

    la source est la si ca peut aider quelqu'un:
    https://forum.ubuntu-fr.org/viewtopic.php?pid=18618001#p18618001
    dans tous les cas merci de ton temps passé pour m'aider
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 503
       
      Merci du retour.
      0