• [^] # Re: Boucle correcte - destination erroné

    Posté par . En réponse au message tar : <chemin ver le fichier/file.tar.gz> : non trouvé dans l'archive. Évalué à 2.

    Je mets des commentaires #-

    #!/bin/bash
    liste_rep="folder/*"
    #- La variable liste_rep vaut : 'folder/*' et ne contient donc qu’un élément.
    #- Il faut enlever les guillemets pour laisser bash étendre.
    #- La variable « folder » n’est pas utilisé.
    # folder="$(ls folder)"
    #- Le liste_rep est en dehors des guillemets, donc bash évalue folder/* 
    #- et l’étend avant de passer les paramètres à echo...
    echo "LISTE REP :" $liste_rep
     for rep in "$liste_rep"
     do
    #- rep vaut la seule valeur de liste_rep.
     echo "AFFICHE REP :"$rep
     #for fichier in "$(ls /folder/*)" # test
    #- Bash étend les répertoires et les fichiers. Donc fichier vaudra :
    #- * 001/1.tar.gz
    #- * 001/2.tar.gz
    #- * 002/1.tar.gz
    #- * ...
     for fichier in $liste_rep/*.tar.gz
     do
    #- Tu peux utilisé cd avec dirname... cd $(dirname ...)
     #cd $liste_rep
     echo "FICHIER :" $fichier
     tar -zxvf $fichier #- --directory $liste_rep/
    #- Ajouter un cd pour retourner dans le répertoire précédent.
     done
     done
    exit
    end

    Aller, je reviens après mangé.