Tom's Guide > Forum > Programmation > [batch] [bat] Comment faire rechercher un fichier a un batch?
Mot :    Pseudo :           
 

Bonjour,
je voudrais savoir comment faire pour qu'un batch cherche tout seul un fichier, et qu'il le supprime eventuellement.

Voila
@+

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Il suffit de tester si le fichier existe:

Code :
  1. set f=toto.txt
  2. IF EXIST %f% (
  3. ' Ici, le fichier existe
  4. ) else (
  5. ' Ici le fichier n'existe pas
  6. )


Répondre à CRicky

Bonjour,
merci pour cete reponse mais j'ai deux question maintenant :)

1 - Est-ce que je met a la place de "ici le fichier existe" mes commandes en fonction de ce qu'il y a de marquer ?

2 - Est-ce que je pe remplacer "f=toto.txt" par "f=c:\programmes files\01\toto.txt" par exemple ??

Merci d'avance

@+

Répondre à Mortal_Sniper

Tien regarde plus simple et plus court :

Code :
  1. if exist C:\mon_dossier\mon_fichier.txt del C:\mon_dossier\mon_fichier.txt



C'est sur la meme ligne !

Répondre à Dark_Silver

C'est pas con du tout :-)
Je n'y avais meme pas penser :-D

Merci ssauf qu'il faut que tu rrajoute des " autour de tes chemins :-) .

Voila a+

Répondre à Mortal_Sniper

Je vien de penser a un autre truc :-D
C'est possible qu'il cherche partout dans le disque dur?

Merci de repondre a+

Répondre à Mortal_Sniper

les : " ne sont pas obligatoire si tes chemin ne comporte pas d'espace ou caractère spéciaux ! ;-)

Répondre à Dark_Silver

Oui c'est possible mais il te faudrait un script de malade !

Répondre à Dark_Silver

ok je ne savais pas merci, moi je l'ai mets tout le temp c'est une habitude donc c'est pour ca.

Sinon ta une reponse a ma question precedente? :-)

Répondre à Mortal_Sniper

lol bien oui il faudrait apprendre à lire avant de programmer :-D

regarde plus haut

Répondre à Dark_Silver

il faudrait faire une fonction récursive

Répondre à ritzle

euh....
lol dsl Dark et tu l connais ce script :-) ???

Répondre à Mortal_Sniper

lol oui je vois à quoi sa ressemblerait dans ma tete ma j'ai pas la force de le faire .... dsl

Répondre à Dark_Silver

Tu peux vite fait me donner deux trois piste et je me debrouille

Répondre à Mortal_Sniper

Il te faut obligatoirement utiliser "for" enfin a ma methode

Répondre à Dark_Silver

mmmmm

pas de chance un des truc que je ne maitrise pas bien....

.... voir pas du tout :-)

Ta pas une autre idee lol

Répondre à Mortal_Sniper

Comme le dit Dark_Silver, tu dois utiliser un for.

Le méthode la plus simple:
tu utilises
DIR /B /S
le /B c'est l'affichage simple et le /S fait la recherche dans tout le disque...

que tu rediriges dans un fichier
DIR /B /S toto.txt > resultats.txt

et une boucle sur les lignes du fichier resultats.txt pour récupérer tous les fichiers trouvés
FOR /F %%i in (resultats.txt) do del %%i

ps: j'ai pas testé, alors vaut mieux faire un ECHO au lieu du DEL avant :-D

Répondre à CRicky

Merci ca marche nikel.Sauf je j'ai rajouter au debut cette ligne :
cd\
Comme ca il commence la recherche a la racine et non pas a l'endroit ou est le batch.
Par contre l'inconveniant c'est qu'il donne les fichier resultats a la racine mais cette ligne devrait suffir:
cd "c:\mon_dossier\dossier_resultat\"

Voila @+

Répondre à Mortal_Sniper

Pour le fichier resultat, tu peux aussi mettre le chemin complet à la redirection (si tu ne veux pas changer de répertoire courant):
DIR /B /S toto.txt > "c:\mon_dossier\dossier_resultat\resultats.txt"

Répondre à CRicky
Tom's Guide > Forum > Programmation > [batch] [bat] Comment faire rechercher un fichier a un batch?
Aller à :

Il y a 2514 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens