Ma structure de dossier dans un lecteur est la suivante (sous Windows):
Folder 1
Fd1
Fd2
Fd3
Fd4
Fd5
Folder 2
Fd1
Fd2
Fd3
Fd4
Fd5
Cet arrangement continue pour des centaines de dossiers. À l'intérieur de Fd1 de chaque dossier x, il y a certains fichiers .bat
. Je cherche un moyen d'extraire une liste de fichiers .bat
avec le chemin d'accès complet à l'aide de la ligne de commande Windows vers un fichier texte. Avec peu d'expérience dans l'utilisation de la commande Invite, je ne sais pas comment cela peut être réalisé.
Je veux que la sortie soit une liste comme celle-ci:
............
D:\Folder 1\Fd1\one.bat
D:\Folder 2\Fd2\two.bat
............
Est-ce que quelqu'un peut m'aider?
Si je comprends ce que vous cherchez, essayez
dir/s/b *.bat
Si cela fonctionne, redirigez-le dans un fichier texte ....
dir/s/b *.bat > textfile.txt
Vous pouvez également trouver utile d’avoir une liste de commutateurs de ligne de commande pour la commande DIR .
Je suggère d'utiliser la commande FOR avec le commutateur/R.
Par exemple, pour rechercher tous les fichiers dans et sous le répertoire actuel, utilisez:
for /r %i in (*) do @echo %i
Pour lancer la recherche dans un répertoire quelconque, utilisez la forme de la commande suivante:
for /r "C:\TMP" %i in (*) do @echo %i
Enfin, pour rechercher tous les fichiers de commandes dans le répertoire c:\bin, procédez comme suit:
for /r "c:\bin" %i in (*.bat) do @echo %i
Cependant, si vous utilisez cette commande dans un fichier de traitement par lots, vous devrez doubler les signes% pour que ces exemples deviennent:
for /r %%i in (*) do @echo %%i
for /r "C:\TMP" %%i in (*) do @echo %%i
for /r "c:\bin" %%i in (*.bat) do @echo %%i
L'utilisation de i en tant que variable ici est complètement arbitraire et a été implantée pour la première fois en moi à l'époque de Fortran.