Auteur de questions
Compter le nombre de dossier dans chaque repertoire + export

Question
-
Bonjour,
Je cherche une commande pour compter le nombre de dossiers dans plusieurs répertoires (plus de 500).
Repertoire1
* dossier
Repertoire2
* dossier
Repertoire3
* dossier
Et importer tout ça en CSV si c'est possible, mais je suis très nul en powershell, pourriez-vous m'aider s'il vous plaît?
Merci
Toutes les réponses
-
Salut,
Ces répertoires sont dans un fichier .txt .csv ? Ou bien il s'agit de répertoire présent dans un seul grand répertoire ?
Déjà pour compter le nombre de dossier: ( Get-ChildItem -Directory | Measure-Object ).Count
Pour le reste, j'attends la réponse à la question plus haut :)
-
-
$rootFolder = "P:\" $extractPath = "C:\temp\csv.csv" $FoldersToScan = Get-ChildItem -Path $rootFolder -Directory $array = @() ForEach ($Folder in $FoldersToScan) { Get-ChildItem -Path $Folder.FullName -Directory | ForEach-Object { $FullPath = $_.FullName $Count = ( Get-ChildItem -Path $FullPath -Directory | Measure-Object ).Count $array += [PSCustomObject]@{ FullPath = $FullPath Count = $Count } } } $array | Export-CSV $extractPath -NoTypeInformation
Je pense être pas trop mal et répondre à la demande, n'hésites pas à me le confirmer (ou me prévenir si tu as un soucis)
Tu as ces deux variables à modifier:
$rootFolder = "P:\" $extractPath = "C:\temp\csv.csv"
Donc $rootFolder correspond à ton dossier "source" (le grand) et $extractPath à "où va aller le fichier" (fichier .CSV!)
Tu as parlé de dossier, donc j'ai mis un paramètre -Directory qui permet de prendre que les dossiers en compte et je n'ai pas mis de -Recurse ce qui veut dire qu'il n'ira pas chercher les répertoires en dessous
- Proposé comme réponse Romain Wager vendredi 27 juillet 2018 08:25
-
Merci celà fonctionne impeccable, mais il descend un cran de trop.
Je lui indique l'endroit où se trouve le grand répertoire (D:\Fichiers\***\---) et il me compte tous les répertoires de chaque.
Je m'explique : il me compte la le contenue d’information comptable,information fiscale, etc. il me faudrait juste le nombre de répertoires de 2TK pas plus bas.
D:\Fichiers\***\---\2TK\INFORMATIONS COMPTABLES
D:\Fichiers\***\---\2TK\INFORMATIONS FISCALES
D:\Fichiers\***\---\2TK\INFORMATIONS GENERALES
D:\Fichiers\***\---\2TK\INFORMATIONS JURIDIQUES
D:\Fichiers\***\---\2TK\INFORMATIONS SOCIALES
Mon grand répertoire se trouve au niveau des tirets. c'est le chemin que je donne dans le script.
Il liste tous les sous-répertoires de 2TK et me donne le nombre de dossiers .Il me faut juste le nombre de dossiers de 2TK
Je ne sais pas si je suis clair ^^
-
Désolé pour ma réponse tardive, dans ce cas il faut supprimer un foreach je pense, j'ai dû en mettre un de trop :)
$rootFolder = "P:\" $extractPath = "C:\temp\csv.csv" $FoldersToScan = Get-ChildItem -Path $rootFolder -Directory $array = @() ForEach ($Folder in $FoldersToScan) { #Get-ChildItem -Path $Folder.FullName -Directory | ForEach-Object { $FullPath = $Folder.FullName $Count = ( Get-ChildItem -Path $FullPath -Directory | Measure-Object ).Count $array += [PSCustomObject]@{ FullPath = $FullPath Count = $Count } #} } $array | Export-CSV $extractPath -NoTypeInformation
- Proposé comme réponse Romain Wager vendredi 27 juillet 2018 08:27