Commande cp

Bonjour,

je sais pas comment utilisé la commande cp, dans le cas suivant:

dans un sous répertoire <19920505> j ai 4 fichiers dont le nom commence par<master>, je veux les copiers dans tout les sous répertoires dont le noms commence par<19920505_>
quelqu un peut m aider;

merci d avance
CYG
Configuration: Windows 2003
Firefox 2.0.0.9

9 réponses

  1. Salut !

    Tu peux essayer la commande :

    cp master* ./1919920505*, mais je ne suis pas sûr du tout que ça marche.

    Tiens nous au courant...
    0
    1. bonjour,

      un cp chemin\<19920505>\<master>* espace chemin\<19920505_>*\

      je verrai ca comme ca ( sans conviction )
      0
      1. salut,
        j ai essayé mais ca marche pas l'étoile aprés <19920505_*>, il me demande de spécifié lequel(entre les sous répertoires dont le préfixe est 19920505_)???

        CYG
        0
        1. et si tu essayes avec move ?

          move chemin\<19920505>\<master>* espace chemin\<19920505_>*\
          0
          1. Modérateur
            Salut,

            A mon avis tu es obligé de passer par des boucles pour faire ce que tu veux :
            jp@MDK:~/tmpfs ssh$ tree
            .
            |-- cyg
            |   |-- 19920505
            |   |   |-- master1
            |   |   |-- master2
            |   |   |-- master3
            |   |   `-- master4
            |   |-- 19920505_1
            |   |-- 19920505_2
            |   |-- 19920505_3
            |   |-- 19920505_4
            |   `-- 19920505_5
            `-- foo.sh
            
            7 directories, 5 files
            
            jp@MDK:~/tmpfs ssh$ ./foo.sh
            jp@MDK:~/tmpfs ssh$ tree
            .
            |-- cyg
            |   |-- 19920505
            |   |   |-- master1
            |   |   |-- master2
            |   |   |-- master3
            |   |   `-- master4
            |   |-- 19920505_1
            |   |   |-- master1
            |   |   |-- master2
            |   |   |-- master3
            |   |   `-- master4
            |   |-- 19920505_2
            |   |   |-- master1
            |   |   |-- master2
            |   |   |-- master3
            |   |   `-- master4
            |   |-- 19920505_3
            |   |   |-- master1
            |   |   |-- master2
            |   |   |-- master3
            |   |   `-- master4
            |   |-- 19920505_4
            |   |   |-- master1
            |   |   |-- master2
            |   |   |-- master3
            |   |   `-- master4
            |   `-- 19920505_5
            |       |-- master1
            |       |-- master2
            |       |-- master3
            |       `-- master4
            `-- foo.sh
            
            7 directories, 25 files
            jp@MDK:~/tmpfs ssh$
            Le script :
            #! /bin/bash
            
            for rep in cyg/19920505_*
            do
            while read fich
            do cp ${fich} ${rep}/
            done < <(ls cyg/19920505/master*)
            done
            ;-))
            0
            1. salut,

              si je veux taper le script directement sue cygwin, j utiliserai quoi (; ou $) pour séparer les lignes?

              CYG
              0
              1. ça marche pas, j ai comme erreur <bash: syntax error near unexpected token ';'>

                CYG
                0
                1. Modérateur
                  Affiche ta syntaxe ;-)
                  0