Liste des répertoires récursifs sous DOS


201

Comment obtenir une liste de répertoires récursive sous DOS?

Je recherche une commande ou un script sous DOS qui peut me donner la liste récursive du répertoire similaire à la ls -Rcommande sous Unix.

Réponses:


361

Vous pouvez utiliser:

dir /s

Si vous avez besoin de la liste sans toutes les informations d'en-tête / pied de page, essayez ceci:

dir /s /b

(Bien sûr, cela fonctionnera pour DOS 6 et versions ultérieures; peut avoir fonctionné avant cela, mais je ne me souviens pas.)


7
+1 très pratique. Si vos répertoires contiennent de nombreux fichiers, cette commande les fera défiler à l'écran trop rapidement pour être lus. Je pense qu'il est préférable de diriger la sortie de cette commande vers un fichier txt que vous pouvez lire à votre propre vitesse. Par exemple (en supposant que le répertoire c: \ temp est créé): dir C: \ / s> C: \ temp \ CDirectoryListing.txt
Steven Magana-Zook

Vous, monsieur, êtes vraiment génial! Ça a marché comme sur des roulettes! Je l'ai utilisé au travail (où nous sommes obligés d'avoir des machines Windows) avec gVIM! Vraiment, vraiment bien! Tu m'as sauvé des heures de maux de tête!
Walialu

Pour une raison quelconque, il imprime le chemin absolu complet avec le dossier C: \ devant lorsque vous utilisez / S et / B, est-ce évitable? Je veux seulement le nom de fichier relatif.
lama12345

2
Oui, fonctionne parfaitement avec Rechercher / Remplacer "C: / dossier" et remplacer par "".
lama12345

22
Juste pour ajouter: tree /fdonne un affichage agréable à l'œil :-)
arun

25

dir /s /b /a:d>output.txt le portera dans un fichier texte


23

Vous pouvez obtenir les paramètres que vous demandez en tapant:

dir /?

Pour la liste complète, essayez:

dir /s /b /a:d

3

Vous pouvez utiliser diverses options avec FINDSTR pour supprimer les lignes dont vous ne voulez pas, comme ceci:

DIR /S | FINDSTR "\-" | FINDSTR /VI DIR

La sortie normale contient des entrées comme celles-ci:

28-Aug-14  05:14 PM    <DIR>          .
28-Aug-14  05:14 PM    <DIR>          ..

Vous pouvez les supprimer en utilisant les différentes options de filtrage proposées par FINDSTR. Vous pouvez également utiliser les excellents unxutils, mais il convertit la sortie en UNIX par défaut, de sorte que vous n'obtenez plus CR + LF; FINDSTR offre la meilleure option Windows.


Agréable! Mon exigence supplémentaire est de compter toutes les lignes, ce qui est fait avec dir /s /b | find /v /c "".
domih

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.