[Batch] Lister des dossiers et sous dossiers.

Fermé
Math - 3 sept. 2011 à 21:55
 roro - 11 avril 2018 à 13:48
Bonjour à tous, :)

Ma question est sans doute simple mais malgré mes nombreuses recherches, je ne parviens pas à trouver la solution... :(

Je voudrais simplement lister les noms des dossiers et sous-dossiers d'un répertoire afin d'effectuer quelques actions avec ces noms.

Je pense donc qu'il faut utiliser une boucle For /F mais je n'arrive pas à trouver la syntaxe exacte.

Quelqu'un peut-il m'aider ? :)

Merci. ;)


A voir également:

5 réponses

Merci à vous tous, j'ai trouvé la syntaxe exacte. :)

J'utilise :

for /f "delims=" %%a In ('dir /ad/b/s  "Dossier" ') Do (
		echo %%a
)


Ce qui permet de lister le nom et seulement le nom des sous répertoires de plusieurs niveaux d'un dossier. ;)
8
Merci bcp, parfait. J'ai juste enlevé le /s pour ne pas descendre dans l'arborescence.
0
dubcek
Messages postés
18525
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
8 août 2022
5 552
4 sept. 2011 à 13:38
hello
@echo off
for /f "delims=" %%a In ('dir /b/s  "C:\Documents and Settings\dubcek\Mes documents" ') Do (
		echo %%a
)
5
cchristian
Messages postés
921
Date d'inscription
lundi 21 janvier 2008
Statut
Membre
Dernière intervention
6 mars 2012
130
4 sept. 2011 à 16:11
Bonjour,

Je verrais bien quelque chose comme cela:

 CD "C:\Documents and Settings\utilisateur_2\Mes documents\_APPLI"
 FOR    /R     %%I       IN   (.)        DO                 (
     rem pour controles visuels en tests à la console.
     ECHO %%I              
     ECHO ______________ Nom du dossier/sous dossier: %%~nI )


0
Colutnirase
Messages postés
4
Date d'inscription
dimanche 4 septembre 2011
Statut
Membre
Dernière intervention
4 septembre 2011

4 sept. 2011 à 16:26
Bonjour.

Pour lister tous les répertoires de <monrepertoire> :

Utilise la commande find en lui indiquant que tu ne recherche que des répertoires (directory)

find <monrepertoire> -type d print

A+
-1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
je ne sais pas ce que tu veux exactement , mais try this

$lister /. : appel paramètre repertoire courant

#!/bin/sh

rep = $0

if : -f rep
then
echo rep
for i in 'ls rep'
do
if : -f i
then
echo $i
lister $i
done
fi
-4
C'est du linux shell
0
FiceA
Messages postés
34
Date d'inscription
jeudi 28 mai 2015
Statut
Membre
Dernière intervention
24 août 2016
4
15 nov. 2015 à 17:43
Si tu te place dans le répertoire dont tu as besoin (avec cd C:\etc..), tu peux utiliser la commande tree pour afficher une arborescence des dossiers et sus-dossiers.


J'espère t'avoir aider !
0