Get-ChildItem очень полезен для подобных ситуаций.
Вы можете добавлять символы подстановки прямо в путь:
Get-ChildItem -Path D:\TEP\FilesProcessing\Test\*.csv
Вы можете найти путь и использовать поставщика для фильтрации файлов:
Get-ChildItem -Path D:\TEP\FilesProcessing\Test\ -recurse -include *.csv
Это должно дать вам то, что вам нужно.
$Props = @{
Time = [datetime]::Parse($_.READ_DTTM)
Value = $_.{VALUE(KWH)}
Tag = $_.SUBSTATION,$_.CIRCUITNAME,$_.PHASE,$_.METERID,'KWH' -join "_"
}
$data = Get-ChildItem -Path D:\TEP\FilesProcessing\Test\*.csv | Foreach-Object {Import-CSV -Path $_.FullName}
$data | Select-Object -Property $Props | Export-CSv -NoTypeInformation D:\TEP\FilesProcessing\Test\file1_out.csv
Также при использовании Powershell избегайте следующих действий:
$objs =@();
$objs += $Object;