Commande pour lister tous les fichiers dans un dossier ainsi que les sous-dossiers dans Windows

190

J'ai essayé de rechercher une commande qui pourrait répertorier tous les fichiers dans un répertoire ainsi que des sous-dossiers à l'aide d'une commande d'invite de commande. J'ai lu l'aide de la commande "dir" mais je n'ai pas trouvé ce que je cherchais. S'il vous plaît aidez-moi quelle commande pourrait obtenir cela.

utilisateur1760178
la source
1
Le post ci-dessous donne la solution pour votre scénario. [Commande de liste des fichiers de sous-répertoire] [1] [1]: stackoverflow.com/questions/3447503/…
10
dir /sFait le travail.
Carey Gregory

Réponses:

295

Le post ci-dessous donne la solution pour votre scénario.

dir /s /b /o:gn

/ S Affiche les fichiers dans le répertoire spécifié et tous les sous-répertoires.

/ B Utilise un format simple (pas d'informations d'en-tête ni de résumé).

/ O Liste par fichiers dans l'ordre trié.

Ploppy
la source
6
Une description des commutateurs utilisés améliorerait grandement cette réponse.
Gusdor
Cela génère le chemin + le nom du fichier pas seulement le nom du fichier. Cela ne marche pas. Lorsque récursif / s est ajouté, DIR affichera toujours les chemins complets dans les sorties. Ainsi, un script FOR serait probablement nécessaire pour trouver récursivement tous les noms de fichiers dans une arborescence de répertoires et les afficher par ordre alphabétique dans un fichier texte.
Rocket Spaceman
1
C'est une excellente option. Cependant, cela ne semble malheureusement pas fonctionner dans PowerShell, ce qui signifie que je semble ne pas pouvoir utiliser cette commande sur un chemin UNC.
oliver-clare
2
Pour PowerShell, essayez dir -splutôt que le /sformat des indicateurs.
Bryan Rayner
3
Très bonne réponse. En plus de cela, en raison de la difficulté de faire des choses comme copier des parties spécifiques de texte à partir d'une invite de commande vanille, il peut être bon d'ajouter >list.txtpour le rendre sortie dans un fichier pour être plus facilement utilisé. La commande serait donc: dir /s /b /o:gn >list.txt
SubJunk
101

Si vous souhaitez lister des dossiers et des fichiers comme une arborescence de répertoires graphique, vous devez utiliser la commande tree .

tree /f

Il existe différentes options pour le format d'affichage ou la commande.

Vérifiez l'exemple de sortie.

entrez la description de l'image ici

Répondre en retard. J'espère que cela aidera quelqu'un.

Somnath Muluk
la source
1
Fonctionne bien à l'intérieur de la fenêtre d'installation de Windows 10!
Jimmy Adaro
13
Voté, car la planète Terre est incroyable
Anselm
1
Comment l'imprimer dans un fichier? J'ai essayé> f.txt mais pas imprimer exactement je vois
Ajith
1
Je sais que l'OP a demandé une commande, mais je me demande si vous connaissez un moyen de style GUI d'obtenir le même affichage arborescent des répertoires et des fichiers?
RenniePet
1
utiliser tree / a / f> output.doc .. pour générer l'arbre sous forme de fichier
Christian Stengel
56

Un ajout à la réponse: lorsque vous ne voulez pas lister les dossiers, seuls les fichiers dans les sous-dossiers, utilisez le commutateur / AD comme ceci:

dir ..\myfolder /b /s /A-D /o:gn>list.txt
Laszlo Lugosi
la source
1
Cette solution fonctionnait très bien avec l'avantage supplémentaire d'exporter la liste vers un fichier .txt.
Jason
Wow, excellente solution. Vous m'avez littéralement économisé 25 minutes ... pour créer des dossiers et copier des fichiers manuellement
tno2007
bonne réponse >>>
Muath
6

Une alternative aux commandes ci-dessus qui est un peu plus à l'épreuve des balles.

Il peut répertorier tous les fichiers indépendamment des autorisations ou de la longueur du chemin.

robocopy "C:\YourFolderPath" "C:\NULL" /E /L /NJH /NJS /FP /NS /NC /B /XJ

J'ai un léger problème avec l'utilisation de C: \ NULL dont j'ai écrit dans mon blog

https://theitronin.com/bulletproofdirectorylisting/

Mais c'est néanmoins la commande la plus robuste que je connaisse.

Bruno
la source
3

Si vous avez simplement besoin d'obtenir un instantané de base des fichiers + dossiers. Suivez ces étapes pour bébé:

  • Appuyez sur Windows+R
  • presse Enter
  • Type cmd
  • presse Enter
  • Type dir
  • presse Enter
Zameer
la source
3
Sans aucun argument, dirdonne uniquement des informations sur les fichiers et répertoires dans le dossier actuel, mais l'OP souhaite que le retour inclue également les fichiers dans les sous-dossiers.
Vyren
@Vyren Merci beaucoup d'avoir souligné cela! Pouvez-vous suggérer une modification ? Je suis plus qu'heureux des améliorations :)
Zameer
0

Répertoriez tous les fichiers, les dossiers de premier niveau et leur contenu

ls * -r

Lister tous les sous-répertoires et fichiers de premier niveau

file */*

Enregistrer la liste de fichiers sous forme de texte

file */* *>> ../files.txt
file */* -r *>> ../files-recursive.txt

Obtenez tout

find . -type f

Tout enregistrer dans un fichier

find . -type f > ../files-all.txt
Prafull
la source