Liste des fichiers non trouvés

Coco_Tehier Messages postés 7 Statut Membre -  
dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonsoir,

L'aide que j'ai reçue il y a longtemps de Dubcek a été parfaite, je voudrais améliorer le systéme :
A partir d'un fichier list.txt qui contient des noms de fichier et grâce à un script je peux récupérer sur un répertoire "A" tous les fichiers contenus dans le fichier list.txt et les déposer dans un répertoire "B"
C'est une sorte d'aspirateur avec filtre...je peux donner le script à qui le veut biensur..
Par contre...en plus je voudrais générer en même temps un fichier qui contient tous les fichiers inscrits dans list.txt mais qui n'ont pas été trouvé dans "A"...mais je ne sais pas faire...
(A date je retrouve les manquants en exploitant un Dir /B /S et une recherchev ou une requete sous access versus le list.txt...c'est lourd et pas esthétique..)
Merci beaucoup pour les pistes ou l'aide compléte !

5 réponses

  1. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    hello
    affiche tout les noms présents dans liste.txt mais pas dans le dossier A
    for /f "delims=" %%a in (liste.txt) do @if not exist A\%%a echo %%a
    1
  2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    devient in %list% et A\ devient %dossierA%\a%%
    attention, c'est %%a et pas a%%
    1
  3. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    pour récupérer dans un fichier
    set out=out.txt 
    for /f "delims=" %%a in (%list%) do if not exist A\%%a echo %%a >> A/CHOSE/%out%
    1
  4. Coco_Tehier Messages postés 7 Statut Membre 1
     
    Merci Dubcek
    J'ai oublié les lunettes au boulot...
    En fait j'ai un
    Set dossierA = un chemin (endroit de stockage des fichier recherché et listé dans list.txt)
    Set dossierB = un autre chemin endroit de dépot de ce qui est recherché
    Set list = list.txt (liste des fichier recherché"
    ce qui fait que in (liste.txt) devient in %list% et A\ devient %dossierA%\a%%
    du coup j'ai essayé d'abord avec ton script en l'ajoutant dans le mien puis seul
    il me retourne tous les fichiers en echo...présents dans le %list% comme si le @if not était muet....
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Coco_Tehier Messages postés 7 Statut Membre 1
     
    J'ai retrouvé les lunettes, tu as raison j'ai écrit un bétise, c'est bien %%a

    Voici en entier le (ton) script qui marche du feu de dieu et que je recommande
    j'ai mis en gras ta dernière aide...que j'essaie d'ajuster..

    B est un lecteur réseau partagé où quelqu'un dépose un fichier list.txt rempli. Ce fichier va se copier dans A un lecteur réseau sensible il est lu par le script qui s'effectue dans A pour renvoyer dans B le résultat trouvé...mais pas les fichiers qui manquent d'où mon nouveau souhait...alors aprés écran ou fichier...

    Finalement si je pouvais récupérer dans un fichier texte au lieu de l'écran..ce serait top
    je peux créer un set out=out.txt et déposer le fichier comme list.txt, dans A ?
    Mais alors comment le remplir, un dir ...... > A/CHOSE/out.txt ?

    S'il te plait est ce que tu peux m'aider à nouveau ou m'indiquer les pistes pour que j'essaie ?

    copy B:\truc\list.txt A:\CHOSE

    @echo off

    set dossierA=A:\CHOSE
    set dossierB=B:\truc
    set list=list.txt

    if not exist "%list%" (goto error)
    if not exist "%dossierA%" (goto error)
    if not exist "%dossierB%" (goto error)

    for /f %%a in (%list%) do (
    echo Recherche de : %%a.png
    copy "%dossierA%\%%a.png" "%dossierB%" >nul
    )
    for /f "delims=" %%a in (%list%) do @if not exist A\%%a echo %%aecho

    EXECUTION TERMINEE
    echo LES FICHIERS SONT SOUS : %dossierB%

    pause
    exit

    :error
    echo VERIFIEZ REPERTOIRES ET LIST.txt
    pause>nul&exit
    0