#Définition des variables
$RootFolder = "C:\temp"
$pathcsv = "C:\csv\results.csv"
$Folders = Get-ChildItem -Path $RootFolder -Recurse -Directory
$Result = @() #Creation du tableau
foreach ($Folder in $Folders) {
# Transformation du chemin du dossier
$ItemFolder = ($Folder.PSParentPath -split "::", 0)[1]
# Obtention de la taille du dossier
$FolderInfo = Get-ChildItem $ItemFolder -Recurse | Measure-Object -Property Length -Sum
$FolderSize = $FolderInfo.Sum
$folderSizeMB = [System.Math]::Round((($folderSize) / 1MB), 2)
# Nom du propriétaire
$Owner = (Get-Acl -Path $ItemFolder).Owner
# Date de derniere écriture
$CreatedDate = (Get-Item $ItemFolder).LastWriteTime
# Ajout des valeurs dans les colonnes spécifiées du tableau
$Result += New-Object psobject -Property @{
FolderName = $Folder.Name
FolderSizeMB = $folderSizeMB
Owner = $Owner
CreatedDate = $CreatedDate
}
}
# Export du résultat dans un fichier csv
$Result | Export-Csv -Path $pathcsv -NoTypeInformation -Encoding UTF8