Liste des fichiers non trouvés

Fermé
Coco_Tehier Messages postés 7 Date d'inscription dimanche 23 mars 2014 Statut Membre Dernière intervention 26 mars 2014 - 24 mars 2014 à 22:44
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 - 26 mars 2014 à 11:18
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

dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
25 mars 2014 à 11:20
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
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
26 mars 2014 à 08:37
devient in %list% et A\ devient %dossierA%\a%%
attention, c'est %%a et pas a%%
1
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 5 620
26 mars 2014 à 11:18
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
Coco_Tehier Messages postés 7 Date d'inscription dimanche 23 mars 2014 Statut Membre Dernière intervention 26 mars 2014 1
25 mars 2014 à 19:57
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

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

Posez votre question
Coco_Tehier Messages postés 7 Date d'inscription dimanche 23 mars 2014 Statut Membre Dernière intervention 26 mars 2014 1
Modifié par Coco_Tehier le 26/03/2014 à 10:43
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