i think you are better served with an array of PSCustomObjects. [grin] something like the code below. the resulting collection is ready for use in other situations - such as export to a CSV file.
you may want to remove the padding on the .Size_KB
property. right now it gives <some spaces><number>
. if you remove the ,7
you can do away with the left padding spaces.
$SourceDir = $env:TEMP
$Filter = '*.log'
$FileList = Get-ChildItem -LiteralPath $SourceDir -Filter $Filter -File
$Results = foreach ($FL_Item in $FileList)
{
[PSCustomObject]@{
Name = $FL_Item.Name
Location = $FL_Item.Directory
Size_KB = '{0,7:N2}' -f ($FL_Item.Length / 1KB)
}
}
$Results
output ...
Name Location Size_KB
---- -------- -------
Genre-List_2018-12-18.log C:\Temp 0.17
Grouping-Strings-List_2018-12-19.log C:\Temp 46.52
Grouping-Words-List_2018-12-19.log C:\Temp 1.13
Itunes_AlbumAutoRating_Disable.ps1_2018-12-17.log C:\Temp 0.21
Itunes_Default-Rating_Set.ps1_2018-12-21.log C:\Temp 0.21
Itunes_Genre-Cleanup.ps1_2018-12-18.log C:\Temp 0.31
Itunes_Grouping-Cleanup.ps1_2018-12-19.log C:\Temp 0.38
Itunes_R-PC-SC_Save.ps1_2018-12-20.log C:\Temp 0.20
jusched.log C:\Temp 9.99
vscode-inno-updater-1545349272.log C:\Temp 337.14