.BAT > Récupérer chemin d'un dossier

Résolu/Fermé
micromega Messages postés 131 Date d'inscription lundi 13 avril 2009 Statut Membre Dernière intervention 12 avril 2020 - 27 nov. 2019 à 16:53
micromega Messages postés 131 Date d'inscription lundi 13 avril 2009 Statut Membre Dernière intervention 12 avril 2020 - 2 déc. 2019 à 15:08
Bonjour,

Dans un chemin où il y a un dossier qui porte un nom non connu, je cherche à récupérer le chemin complet afin de l'utiliser dans une commande de copy (par exemple).

J'avais essayé (entre autre) : dir "C:\Dossier1\NomDossierInconnu" /b /a-d /s
Le dossier est vide, donc pas de commande de recherche pour récupérer le chemin.

Comment avancer dans les dossiers après le "C:\Dossier1\" ? J'ai également essayer "/.." mais sans succès.

Merci pour l'aide...

1 réponse

barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905
27 nov. 2019 à 19:20
Bonjour,

Essaie ça :
dir C:\Dossier1 /b /ad /s

0
micromega Messages postés 131 Date d'inscription lundi 13 avril 2009 Statut Membre Dernière intervention 12 avril 2020 1
28 nov. 2019 à 14:38
Bonjour,

Ah ben oui, c'est tout simple en fait !

Dans le cas où il y aurait plusieurs dossiers après le dossier 1, comment puis-je isoler celui qui m'interesse (par exemple par ordre de l'arborescence) ?

Aussi, j'essaye de mettre le résultat en variable pour le réutiliser, mais il me manque la lettre du lecteur avec cette commande :
for /f "tokens=2* delims=:" %%i in ('dir ""C:\Dossier1" /b /ad /s') do set VAR=%%i

Merci encore
0
barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905 > micromega Messages postés 131 Date d'inscription lundi 13 avril 2009 Statut Membre Dernière intervention 12 avril 2020
Modifié le 28 nov. 2019 à 20:15

Dans le cas où il y aurait plusieurs dossiers après le dossier 1, comment puis-je isoler celui qui m'interesse (par exemple par ordre de l'arborescence) ?


==>> je ne comprend pas bien ce que tu veux dire, tu veux dire au même niveau que dossier1 ou bien des sous-dossiers de dossier1, un exemple stp.


Aussi, j'essaye de mettre le résultat en variable pour le réutiliser, mais il me manque la lettre du lecteur avec cette commande :


==>> for /f "delims=" %%i in ( 'dir "C:\Dossier1" /b /ad /s') do set VAR=%%i
0
micromega Messages postés 131 Date d'inscription lundi 13 avril 2009 Statut Membre Dernière intervention 12 avril 2020 1
29 nov. 2019 à 07:31
Dans le cas où il y aurait plusieurs dossiers après le dossier 1, comment puis-je isoler celui qui m'interesse (par exemple par ordre de l'arborescence) ?

> Je voulais dire, si dans "C:\Dossier1" il y a le sous-dossier "NomDossierInconnu", "AutreA", "AutreB"... comment ne récupérer que le chemin complet de "NomDossierInconnu" ?

Cette commande marche parfaitement dans le cas où il n'y a qu'un dossier après "Dossier1" :
dir C:\Dossier1 /b /ad /s

Mais s'il y a plusieurs dossiers, tous les sous-dossiers de "Dossier1" sont listés, alors que je souhaite récupérer le chemin de "NomDossierInconnu" uniquement.

Merci
0
barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905 > micromega Messages postés 131 Date d'inscription lundi 13 avril 2009 Statut Membre Dernière intervention 12 avril 2020
29 nov. 2019 à 21:49
Par exemple, pour isoler le premier de l'arborescence :

@echo off

for /f "delims=" %%A in ('dir /b /ad "C:\Dossier1" ^| sort /r') do set dossier=%%~fA

echo %dossier%

pause
0
micromega Messages postés 131 Date d'inscription lundi 13 avril 2009 Statut Membre Dernière intervention 12 avril 2020 1
1 déc. 2019 à 15:58
Ok, ça marche, mais pour désigner le deuxième dossier ou le troisième, je dois agir où dans le code pour le choisir ?
0