Copie récurcive de dossiers

Résolu
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007 - 9 juil. 2007 à 19:38
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008 - 11 juil. 2007 à 19:27
Bonjour tout le monde.

C'est mon premier message et j'espère pas le dernier.

J'ai un petit soucis. Je travail ce mois ci en tant que saisonnier et je suis chargé du classement des informations clientelles.

Pour vous expliquer:

J'ai un dossier CLIENTS dans lequels ce trouve des dossiers au nom de chaque clients. Ce dossier CLIENTS se compose de plus de 1000 dossiers.

Pour réorganiser les informations, je doit créer dans chacun de ces dossiers un certain nombre d'autres dossiers.

Je voudrais savoir comment faire une copie "récurcive"  (j'espere que je dit pas de bétise) de ces dossiers dans chacun des dossiers portant le nom d'un client.

j'en ai un pu parlé au personne de mon entourage qui s'y connaisse un peu et on m'a conseillé de faire un .bat créant mes dossiers types automatiquement et de le mettre dans chacun des dossiers clients.

Je trouve l'idée bonne mais celà ne regle pas mon problème. Il manque toujours la phase d'automatisation permettant de copier ce fichier .bat dans chaque dossier client.

J'espere que vous pourrais m'aider, j'ai pas envie de me farcire à la main la copie des dossiers types...

Merci d'avance

24 réponses

eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
9 juil. 2007 à 21:49
Merci beaucoup MadMax,

Alors disons que j'ai un dossier CLIENT qui contient 1000 noms de client, et dans ces 1000 dossiers, je veux disons 4 dossiers qui se créés automatiquement grâce à un .BAT ou autre chose. (Les mêmes dossiers pour chaque client)

Ce qui donne comme arborescence:

CLIENT
            Client1
                        Type1
                        Type2
                        Type3
                        Type4

            Client2
                        Type1

                        Type2

                        Type3

                        Type4

etc

Je cherche un moyen de copier mes 4 dossiers dans chaque dossier Client de façon automatique.
Celà permettant de m'éviter un copier/coller manuel des 4 dossiers dans les 1000 dossiers clients.
3
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
9 juil. 2007 à 21:49
Après réflexion j'ai constaté que tu voulais simplement le faire pour les clients déjà présents ( dis moi si je me trompe ) dans ce cas voici le code chez moi sa marche

Sa te liste ton dossier Clients qui sera retirage vers un fichier pour pouvoir le traiter.
Puis pour chaque ligne ( Clients ) du ficher sa te créer le répertoire voulu ( tu peux rajouté autant de commande _mkdir que tu le souhaite 1 _mkdir = 1 dossier )

#include
#include <direct.h>
#include <stdlib.h>
#include <stdio.h>
#include <string>
#include <fstream>
using namespace std;

void main ( void)
{

        //Liste les dossiers clients et redirige le résultat dans un fichier
        system("dir /b /s c:\\Clients > c:\\monfichier.txt");
       
        const char * temp;
        std::string s;
        std::ifstream File("c:\\monfichier.txt");
 
        //Récupération du nombre de ligne dans notre cas une ligne = un client
        while (std::getline(File, s,'\n')){
       
        //Récupération de chaque dossier
        temp=s.c_str();
       
        //Se placer dans le dossier
        _chdir(temp);

        //Création d'un dossier salaire ( exemple )
        _mkdir( "salaire" );

        }
       
   
}

A toi de changer le chemin du dossier Client si il est différent !
3
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
9 juil. 2007 à 21:52
Donc ceci pourrait allé je pense
Désolé tu a répondu au même moment ou j'ai déposé le code
3
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
9 juil. 2007 à 21:55
Oui tout à fait.

Je crois bien que c'est ça.

Par contre j'ai un ptit soucis.

Je ne sais pas trop comment compiler ce programme.

Quel logiciel faut-il que j'utilise pour la compilation ?
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
9 juil. 2007 à 19:52
Si je comprends bien tu dois créer plusieurs dossiers dans chaque dossier clients. Si c'est le cas donne moi le non de ses dossiers pour que je puisse plancher sur le sujet.
De plus tu cherche à savoir si il est possible de créer ces dossier automatiquement à chaque démarrage de windows si c'est le cas tu devras faire une vérification à chaque démarrage si un nouveau client est présent.

Donne moi plus d'info et je regarde ce qu'il est possible de réaliser.

A ton service !!
0
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
9 juil. 2007 à 22:00
La c'est autre chose.

j'ai développer ce code sous visual studio c++ 6.0
Récupère le si tu ne la pas et si tu connais pas les manip dis le moi

Au pire donne moi toute les info je fait ton appli ( généreusement et jte l'envoi par mail )

A++
0
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
9 juil. 2007 à 22:14
C trés gentil de ta part mais jvais essayer d'abord. On apprend toujours mieu par l'expérience.

J'ai déjà fait plus ou moins du C en cours d'électronique pour la programmation des microcontrôleurs.

J'ai une ptite question:

Sachant que je ne peut installer de logiciel sur le PC de travail de l'entreprise, je vais devoir compiler mon fichier C sur mon PC personnel. La question est, est ce que je pourrai executer mon fichier .C même sans avoir de logiciel installé ?
0
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
9 juil. 2007 à 22:16
Désolé pour le "C" de C trés gentil ^^

Des fois, ca viens comme ça...
0
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
10 juil. 2007 à 00:08
En compilant le programme il va créer un exécutable.

Après sa dépend si l'exécutable à besoin de librairie propre à visual mais je sais qu'on peut créer un exe indépendante ( librairie incluse dans l ' exe )

Tu testeras après si tu rencontre des problème je suis a ta disposition mais fait vite !!

A++
0
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
10 juil. 2007 à 13:01
Salut,

Je teste la compilation ce soir. Je te dit si ça fonctionne (je l'espère).

J'ai une autre question d'optimisation en tête.

Dans ces dossiers clients se trouve des dossiers aux noms "hazardeux" si je peux dire.
Et dans ces dossiers "hazardeux" se trouve des fichiers.

Dans une optique des réorganisations, ces fichiers vont être classés dans les dossiers créés grâce au script précédent.

Je pense que cette étape doit se faire de façon manuel, mais je voudrais, pour me faciliter la tâche, déplacer l'ensemble des fichiers à la racine du dossier client.

Voici un ptit exemple:

Mon arborescence d'origine:

c:\ CLIENTS \ Nomclient \ Nomhazardeux \ fichier.pdf
c:\ CLIENTS \ Nomclient \ Nomhazardeux \ fichier2.pdf
c:\ CLIENTS \ Nomclient \ Nomhazardeux2 \ fichier3.pdf

Je voudrais lister mes fichiers contenu dans le dossier Nomclient pour ensuite les déplacer dans le dossier "Nomclient" à la racine.

c:\ CLIENTS \ Nomclient \ fichier.pdf
c:\ CLIENTS \ Nomclient \ fichier2.pdf
c:\ CLIENTS \ Nomclient \ fichier3.pdf

Y'a t-il un moyen de faire ça.

Ceci étant toujours dans une optique d'optimisation.

Merci d'avance
0
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
10 juil. 2007 à 13:30
c'est possible !!

Je regarde ce que sa peut donner et jte refile le code

A++
0
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
10 juil. 2007 à 13:33
Juste un détail ces dossier hazarduex comme tu dis yen na plusieurs ? est ce qu'ils ont tous le meme non pour chaque client ?
0
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
10 juil. 2007 à 13:54
Oui il peut y en avoir plusieurs et ont souvent un nom différent.

Ce sont souvent des dossiers portant le noms d'un produit avec un code d'indentification.

Exemple:

849961 Fraise
786300 Orange
0
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
10 juil. 2007 à 14:10
Donc le mieux c'est de se préoccuper de ce problème en 1er lieu ( donc ne créer pas les dossiers pour l'instant ).

Y va falloir que me dise exactement le contenu des dossiers clients, ce qu'il contienne à l'heure actuel sans avoir créer nos dossiers précédents. Je m'explique dans chaque dossier client ta des dossiers hasardeux mais c'est tout je veus dire par la que si ya d'autre dossier auquel tu ne veut pas touché sa va être fastidieux.

Sinon il suffira de listé les dossier hasardeu pour chaque client et de déplacer les fichier qu'ils contienne a la racine du dossier client je sais pas si tu me comprend mais c'est difficile d'expliquer.
0
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
10 juil. 2007 à 14:42
C'est tout à fait ça. Je ne veux garder aucun dossier. Je veux déplacer l'ensemble des fichiers à la racine du dossiers clients.

Les dossiers clients contiennent des sous dossiers aux noms "hazardeux" qui peuvent contenir eux aussi des sous dossiers au noms "hazardeux". C'est dossiers contiennent des fichiers de type .pdf, .doc, .xls, .zip, ...
0
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
10 juil. 2007 à 15:08
avec encore des sous dossier
sa va devenir trés chiant ton affaire
mais je redarde et je vois skon peut faire
0
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
10 juil. 2007 à 16:01
Ouai, c'est pour ça. Je ne sais pas combien il y a de niveau dans un dossier client. C'est variable selon les dossiers clients.

Je te raconte pas, faire cette manipulation de façon manuelle, j'en fait des cauchemars :p
0
MadMax1024 Messages postés 95 Date d'inscription lundi 25 décembre 2006 Statut Membre Dernière intervention 25 juillet 2008
10 juil. 2007 à 19:25
Tinkiet c'est toujours possible mais l'algo du programme va être long.

Donc récapitulons que je me trompe pas dans l'algo

- Tu veus que tout les fichiers présent dans les différents dossiers d'un client
  soit placé à la racine de celui -ci

- Tu veus créer des dossier type dans chaque clients !

C'est bien ton bonheur  si oui alors ji go

J'espère que t'es pas pressé car je fait ce que je peu
0
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
10 juil. 2007 à 23:02
Oui c'est tout a fait ça.

Je  suis en train de me pencher sur la compilation du premier programme, jte tiens au courant.
0
eikosphinx Messages postés 13 Date d'inscription lundi 4 juin 2007 Statut Membre Dernière intervention 11 juillet 2007
11 juil. 2007 à 00:40
Pas si facile que ça d'utiliser Visual Studio :s

Jtrouve pas comment créer un executable.
0
Rejoignez-nous