Bonjour à tous,
est-il possible de récupérer la liste de tous les sous-répertoire d'un répertoire donné et les écrire dans un fichier texte ?
Vous remerciant par avance de votre aide
Je vous souhaite une bonne journée![]()
Bonjour à tous,
est-il possible de récupérer la liste de tous les sous-répertoire d'un répertoire donné et les écrire dans un fichier texte ?
Vous remerciant par avance de votre aide
Je vous souhaite une bonne journée![]()
Code BAT : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 @echo off Mode con cols=55 lines=3 cls & color 0A & echo. Title List Folders and SubFolders by Hackoo 2016 set Folder=C:\ set LogFile=ListFolder.txt Echo Veuillez patienter un peu ... Dir /b /s /a:d "%Folder%" > %LogFile% Start "" %LogFile%
Hello,
Merci à hackoofr pour son aide, ce script (qui n'est pas du VB) fonctionne et me suffit, par contre juste une précision, avant de poser ma question, j'ai bien effectuer une recherche comme préconisée, mais après après avoir analyser et testée certaines des réponses comme aucune ne me satisfaisait, j'ai décidé de poser ma question.
Bonne journée![]()
A hackoofr : Salut je te mets le
A rouletabille63
La recherche seule ne suffit pas, il faut rechercher et modifier un tout petit peu voici un exemple avec 2 fichiers en sortie : l'un qui liste les dossiers et l'autrequi liste les erreurs d'accès au cas où il y en aurait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 Option Explicit Const ForWriting = 2 Dim oFSO, nCount, WS,objOut, objErr Set oFSO = CreateObject("Scripting.FileSystemObject") Set objOut = oFSO.OpenTextFile(".\ListFold.txt", ForWriting, True) Set objErr = oFSO.OpenTextFile(".\ErrLogFile.txt", ForWriting, True) nCount = 0 ScanForFolders oFSO.GetFolder("C:\") objOut.WriteLine "Nombre de dossiers : " & CStr(nCount) objOut.Close objErr.Close MsgBox "Recherche terminée." & vbCrLf & vbCrLf & "Ouverture des fichiers : 'Liste des dossiers' et 'Journal d'erreurs'" Set WS = CreateObject("WScript.Shell") WS.Run ".\ListFold.txt", 1, True WS.Run ".\ErrLogFile.txt", 1, False Sub ScanForFolders(oFolder) Dim oSubFolder On Error Resume Next If Err.Number <> 0 Then objErr.WriteLine("Dossier [" & oFolder.Path & "] inaccessible") Err.Clear Else nCount = nCount + 1 objOut.WriteLine(Right("000000" & Cstr(nCount),6) & " => " & oFolder.Path) End If For Each oSubFolder In oFolder.SubFolders If Err.Number <> 0 Then objErr.WriteLine("Sous-dossier [" & oSubFolder.Path & "] inaccessible") Err.Clear Else ScanForFolders oSubFolder End If Next End Sub
Ne pas oublier le tag
si satisfait.
Voter pour toute réponse satisfaisante avec
pour encourager les intervenants.
Balises CODE indispensables. Regardez ICI
Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
Vous pouvez consulter mes contributions
Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
Ne pas oublier L'Aide VBScript et MSDN VB6 Fr
Partager