[Windows]Trouver tous les fichiers se terminant par une certaine extension

Répondre
Partager Rechercher
Je cherche une ligne de commande pour trouver tous les fichiers qui se termine par une extension données.

J'ai fait ça :
for /r dossier %f in (.ext) do echo "%f"

Il trouve bien les fichiers mais n'affiche que le path + l'extension, sans le nom du fichier. Et je ne peux donc pas les supprimer par la suite.
J'ai essayé avec
for /r dossier %f in (*.ext) do echo "%f"
Mais la il ne trouve plus rien.

Une idée svp ?
Je fais ça moi pour avoir une liste de fichiers propre :

exemple, pour lister les .bat du disque c:, sous répertoires compris :

dir c:\*.bat /w/s/o/b

Et si tu veux le mettre dans un txt :

dir c:\*.bat /w/s/o/b > c:\liste.txt
Si tu veux juste supprimer les fichiers d'une extension, tu peux faire un del :

tu te met sur C:

del *.ext /S > c:\erased.txt

Ca va logguer les fichiers supprimés sous cette forme dans le erased.txt :
(j'ai fait le test avec un fichier blabla.test)

Fichier supprim‚ - C:\blabla.test
Fichier supprim‚ - C:\TEMP\blabla.test


Sinon, j'ai testé avec du for, et ça fonctionne pour moi comme ça :

for /r dossier %f in (*.ext) do echo %f
(et la suppression marche en remplaçant echo par del)

bon suivant la taille du répertoire ça peut etre long et donner l'impression qu'il trouve rien, (sur c: comme répertoire de base, c'est assez long avant d'avoir un résultat sur un fichier que j'ai foutu dans le temp)
Si tu veux supprimer tous les fichiers dont l'extension est, par exemple, BAK :
sans demande de confirmation : del c:\*.bak /s/f/q/a:h
avec demande de confirmation : del c:\*.bak /s/f/p/a:h

/s pour aller dans les sous-répertoires
/f pour forcer l'effacement des fichiers avec l'attribut en lecture seule
/q pour le mode silencieux
/p si tu veux confirmer l'effacement
/a:h pour supprimer aussi les fichiers cachés

Testé sous Windows Vista et XP.
__________________
Il est possible que je dise des âneries...
Bon on avance

t'as raison avec for ça marche avec des fichiers normaux.
Mais dans mon cas, les fichiers (*.onetoc2) sont caché par le filesystem faut une option en plus pour le voir ?
Sur les for j'ai pas encore trouvé comment bosser sur les fichiers cachés ^^

Par contre sur les dir et del, il faut ajouter /AH comme paramètre pour que la commande se fasse sur les fichiers cachés (et uniquement eux), ou /A tout court pour tous les fichiers.

*fouine les docs sur le for*
Citation :
Publié par Brock
Si tu veux supprimer tous les fichiers dont l'extension est, par exemple, BAK :
sans demande de confirmation : del c:\*.bak /s/f/q/a:h
avec demande de confirmation : del c:\*.bak /s/f/p/a:h

/s pour aller dans les sous-répertoires
/f pour forcer l'effacement des fichiers avec l'attribut en lecture seule
/q pour le mode silencieux
/p si tu veux confirmer l'effacement
/a:h pour supprimer aussi les fichiers cachés

Testé sous Windows Vista et XP.
Juste pour dire que j'ai finalement retenu cette solution et qu'elle marche très bien.
Répondre
  • »
 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés