IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Copier Fichiers A vers B si NON present dans liste.txt


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 30
    Par défaut Copier Fichiers A vers B si NON present dans liste.txt
    bonjour,

    je souhaiterai copier des fichiers d'un répertoire f:\AAA vers un répertoire f:\BBB suivant une liste dans un fichier texte.
    La condition pour que le fichier soit copié :
    il doit être biensur dans AAA mais il ne doit pas apparaître dans liste.txt..

    en fait il me faudrait ce script mais à l'envers :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    IF NOT EXIST "f:\test1\%1\%2" (
    	MKDIR "f:\test2\%1\%2"
    	)
    
    for /f "tokens=*" %%a in (liste.txt) do (
         copy "f:\AAA\%1\%%a" "f:\BBB\%1\%2\" 
    )
    merci de votre aide.

  2. #2
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    Salut,

    Tu as 2 fichiers liste.txt ?

    1 contenant la liste des fichiers à copier et 1 la liste des fichiers déjà copiés ???

    C'est pas très clair. Donne un peu plus de détail, sur la finalité de ce script et comment tu va le lancer (apparement avec 2 paramètres, 2 repertoires....???)

    Amicalement

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 30
    Par défaut
    désolé..
    bon :
    j'ai un dossier AAA avec des fichiers.
    j'ai un dossier BBB vide ou avec des fichiers.
    j'ai un fichier Liste.txt qui est mis à jour via un autre batch et qui note le nom de chaque nouveaux fichiers qui sont déjà dans BBB.(dir /b >> liste.txt)

    ce que je veux, c'est copier les fichiers de AAA vers BBB.
    Mais avec 2 conditions :
    il faut que le fichier à copier soit dans AAA et absent de BBB
    MAIS aussi le nom de ce fichier ne doit pas être listé dans liste.txt.

    voila j’espère que j'ai été un peu plus clair..

  4. #4
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    Salut,

    Voilà le code pour ton problème. En fait tu set un switch à 1 si un de tes 2 tests est positif.

    Si ton switch est égal à 0 tu fait la copie.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    ::::Par SachaDee 19-03-2013
    
    @echo off
    cls
    
    :::::REPERTOIRE SOURCE
    set $rep_source=f:\AAAA
    
    :::::REPERTOIRE DESTINATION
    set $rep_destination=f:\BBBB
    
    dir %$rep_source% /aa /b>a_copie.txt
    
    set $switch=0
    setlocal enabledelayedexpansion enableextensions
    for /f "delims=" %%a in (a_copie.txt) do (
                                               if exist %$rep_destination%\%%a set $switch=1
                                               if !$switch!==0 for /f "delims= " %%b in (liste.txt) do (if /i %%a==%%b set $switch=1)
                                               if !$switch!==0 (copy %$rep_source%\%%a  %$rep_destination%
     					                    echo copie de %%a))
    
    endlocal
    Amicalement

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 30
    Par défaut
    J'ai modifié avec mes répertoires tests mais il ne se passe rien quand je lance..
    j'ai mis des fichiers dans test1, j'ai vidé liste.txt, il n'y a pas d'erreur mais pas de copie des fichiers..

  6. #6
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    Salut,

    creuse un peu, mets des echo et des pause pour situer le problème.
    J'ai testé le script, il fonctionnent. Regarde si a_copie.txt est bien créer.

    Si tu as compris le principe du programme ça ne devrait pas être trop compliqué !

    Si tu rames, avises-moi !

    Amicalement

Discussions similaires

  1. [Batch] Copier Fichiers A vers B si present dans liste
    Par Jord8 dans le forum Scripts/Batch
    Réponses: 12
    Dernier message: 05/01/2015, 19h00
  2. [XL-2007] Copier fichiers excel vers feuilles
    Par neogunnm dans le forum Excel
    Réponses: 4
    Dernier message: 04/02/2014, 14h55
  3. copier fichier text vers Excel implementé par VB.Net.
    Par sihammaster dans le forum VB.NET
    Réponses: 3
    Dernier message: 25/11/2009, 20h09
  4. fichiers .properties non presents dans un Jar Maven.
    Par scratch_1 dans le forum Maven
    Réponses: 1
    Dernier message: 14/10/2009, 17h25
  5. Copier fichiers excel vers un autre fichier
    Par bb62 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 07/10/2008, 16h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo