English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
Toutes les catégories

Comment faire un batch MS-DOS appliquant une fonction à chaque fichier trouvé dans un répertoire ?

2006-10-20 01:38:43 · 6 réponses · demandé par Stefinho 1 dans Informatique et internet Programmation

En gros : je scanne un répertoire à la recherche d'un certain type de fichier. Ensuite, sur chacun des fichiers trouvés, j'applique une fonction de décodage. En pascal je saurais le faire, mais en dos j'ai plus de mal. Je me doute bien qu'il faut un FOR mais comment gérer les fichiers un à un ?

2006-10-20 02:45:56 · update #1

Par exemple :
L'objectif est de renommer chaque fichiers d'un répertoire. Sauf que moi je ne renomme pas, je décode.

2006-10-20 02:50:35 · update #2

6 réponses

utilise le for et fait un truc du genre
FOR /R c:\ %i in (*.txt) do mondecodeur.exe %i

attention, si tu mets cela dans un .bat ou .cmd, alors il faudra doubler les % !!!!
FOR /R c:\ %%i in (*.txt) do mondecodeur.exe %%i

(tu peut remplacer le mondecodeur.exe par un autre batch)

Un autre exemple ?
lister tous les mp3 de mon disque :
FOR /R c:\*.mp3 %i do echo %i > liste.txt

Le shell c'est plus fort que toi ;)

Nb : sinon un script en vbs (VBScript) ou whs (Windows Host Scrit) peut le faire...

syntaxe du FOR :
FOR /R [[lecteur:]chemin] %variable IN (ensemble) DO commande [paramètres]

Parcourt l'arborescence de répertoires depuis la racine [lecteur:]chemin,
en exécutant FOR dans chaque répertoire de l'arborescence. Si aucun
répertoire n'est spécifié après /R alors le répertoire en cours est
utilisé. Si ensemble est seulement un point (.) alors seule l'arborescence
de répertoires sera énumérée.

2006-10-20 12:44:28 · answer #1 · answered by Shogun 2 · 0 0

exemple :

for %i in (*.doc) do macommande.exe %i

ou bien

for %i in (*.doc) do call malistedecommande.bat %i

attention à un petit détail, la commande FOR ne fonctionne pas très bien si on modifie le répertoire pendant le parcours. si tu dois créer d'autres fichiers, il vaut mieux les envoyer dans un autre dossier. et surtout ne pas en supprimer

2006-10-20 12:35:53 · answer #2 · answered by Ramis V 7 · 1 0

precise ta question et les commandes à appliquer...

2006-10-20 01:56:13 · answer #3 · answered by ldengue 4 · 0 0

Infos sur:

http://www.alphaquark.com/Informatique/Msdos.htm

NB Sur Internet il existe des moteurs de recherche !

2006-10-20 01:49:19 · answer #4 · answered by Victor 5 · 0 0

Quelle version de Windows ? Quelle fonction ? Vous avez regardé la commande for ?

2006-10-20 01:47:08 · answer #5 · answered by Anonymous · 0 0

ça dépend c'est quoi la fonction.

Si par exemple tu veux effacer tout les fichiers tu fais

del *.*

Le "*.*" symbolise l'ensemble des fichiers.

2006-10-20 01:47:10 · answer #6 · answered by john889743 2 · 0 1

fedest.com, questions and answers