J'ai rencontré un petit problème en essayant d'obtenir uniquement les noms de fichiers (pas d'extensions ou de chemins de fichiers) de manière récursive, ce qui a fonctionné pour moi dans le dossier racine:
dir /b
Mais quand j'ai ajouté / s pour scanner récursivement, j'ai également obtenu des chemins de fichiers avant les noms de fichiers que je ne veux pas. Existe-t-il un moyen d'obtenir les noms de fichiers nus de tous les sous-dossiers d'un répertoire?
Im sur Windows 7 x64, je préfère utiliser l'invite de commande régulière et non PS ou VBS
Essaye ça:
Plus d'informations sur la façon dont fonctionne et ce qu'il fait, tapez
for /?
la source
>> filename.txt
ou
en supposant un fichier
noquotes.bat
dans votre % PATH% avec ce contenuapproche for / r expliquée
for /r
parcourt le répertoire courant de manière récursive (vous pouvez spécifier un répertoirefor /r drive:\path\
, le répertoire courant est supposé) et exécute la commande spécifiée par do pour chaque fichier correspondant dans l'ensemble(*)
. L'ensemble(.)
ne correspondrait qu'aux répertoires. @echo% ~ ni Cette commande fonctionne telle quelle à partir de l'invite. Doublez vos devis si vous les placez dans un fichier batch. c'est à direfor /r %%i in (*) do @echo %%~ni
explication de l'approche forfiles
/s
énumère le sous-répertoire courant et tous les/c
exécute la commande à l'intérieur des guillemets@isdir
et@fname
est un symbole émis dans la chaîne de commandeLe fichier de commandes supplémentaire
noquotes.bat
aide en supprimant les guillemets doubles avec% ~ 1 (paramètre 1)forfiles
vous permet également de spécifier un chemin pour commencer àforfiles /P C:\Windows ...
la source
Liste tous les fichiers, nus, récursivement, à l'aide d'attributs (pas de répertoire) (fichiers uniquement)
dir / B / S / A: -D
C: \ test \ cache> dir / B / S / A: -D
C: \ test \ cache \ 7 \ 0f \ 7b50ed0522645513da90345120eaf0f7 C: \ test \ cache \ d \ 23 \ 814644aa6a8195c91e54d2f7bb64e23d
la source
dir /b /s
] de numériser récursivement, j'ai aussi des chemins de fichiers avant les noms de fichiers, ce que je ne veux pas. qu'il produit le même résultat que lorsque l'OP l'a essayé (c'est-à-dire pas ce qu'il veut).