Partage
  • Partager sur Facebook
  • Partager sur Twitter

Copie de fichier avec création d'arborescence

    18 octobre 2019 à 13:43:57

    Hello smile
    Je possède une liste de fichiers à traiter. (en .txt)
    OU dans le document, nous avons juste des noms de dossier avec leurs arborescences de type:

    /home/dossier1/toto
    /home/dossier1/toto2
    /home/dossier2/toto
    /home/dossier2/toto2


    Etc...

    En fait, j'aimerais qu'à partir de cette liste faire une copie vers un point de montage en recréant l'arborescence exacte

    Exemple:
    /mnt/home/dossier1/toto
    /mnt/home/dossier1/toto2
    /mnt/home/dossier2/toto
    /mnt/home/dossier2/toto2


    Etc...

    J'ai tenté de faire ce script mais sa n'a pas l'air d'etre ça ^^

    for i in $(cat liste.txt)
    do
    if [ -e "$i" ]
    then mkdir -p $i /mnt
    fi
    done;
    



    • Partager sur Facebook
    • Partager sur Twitter
      18 octobre 2019 à 16:16:00

      Bonjour, pas jolie, mais essayes:

      for i in $(cat liste.txt)
      do
      if [ -e "$i" ]
      then
              rep=`dirname $i`    
              mkdir -p /mnt$rep/
              cp $i /mnt$rep/
      fi
      done;
      



      • Partager sur Facebook
      • Partager sur Twitter
        18 octobre 2019 à 19:16:45

        salut,

        ah, non, c'est pas beau.
        pour lire une fichier, c'est while read -r line; do : ...; done <fichier

        ensuite, pour copier une arborescence, il existe une astuce qui utilise tar

        • Partager sur Facebook
        • Partager sur Twitter

        Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

          21 octobre 2019 à 7:29:27

          Salut
          Je n'ai pas travaillé sur Linux récemment.
          Sur Unix, j'utilisait un `tar' pour transporter une arborescence complète d'un endroit à un autre en conservant tous les attributs.
          Cependant, s'il faut extraire seulement les fichiers *.txt, il faut traiter l'arborescence soit avant, soit après le transfert.
          Je ne me rappelle pas si `tar' pouvait compresser d'une façon sélective.
          • Partager sur Facebook
          • Partager sur Twitter

          Le Tout est souvent plus grand que la somme de ses parties.

            21 octobre 2019 à 14:22:09

            Hello

            Merci pour vos réponses j'ai réussi à trouver une solution le cp -rf

            for fic in `cat list.txt`; do cp -Rp --parents $fic /mnt/nas_tmp/; done



            • Partager sur Facebook
            • Partager sur Twitter

            Copie de fichier avec création d'arborescence

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown