Ограничение Powershell Get-ChildItem по дате создания файла

Я использую команду Powershell для создания CSV-отчета о некоторых типах файлов. Моя цель - выяснить, сколько было добавлено в течение определенного диапазона дат. Прямо сейчас, script находит все, и я сортирую по дате, чтобы найти мой номер. Я хотел бы изменить команду, чтобы возвращать только объекты в период ярости создания, т.е. Если этот файл был создан между 1 марта 2013 года и 31 марта 2013 года. Вероятно, есть способ ограничить команду диапазоном дат, вероятно, используя Select- Объект, я просто не могу понять.

Get-ChildItem 'PATH' -recurse -include @("*.tif*","*.jp2","*.pdf") | Select-Object FullName, CreationTime, @{Name="Mbytes";Expression={$_.Length/1Kb}}, @{Name="Age";Expression={(((Get-Date) - $_.CreationTime).Days)}} | Export-Csv 'PATH\scans.csv'

Ответ 1

Используйте Where-Object и проверьте $_.CreationTime:

Get-ChildItem 'PATH' -recurse -include @("*.tif*","*.jp2","*.pdf") | 
    Where-Object { $_.CreationTime -ge "03/01/2013" -and $_.CreationTime -le "03/31/2013" }

Ответ 2

Используйте Where-Object, например:

Get-ChildItem 'PATH' -recurse -include @("*.tif*","*.jp2","*.pdf") | 
Where-Object { $_.CreationTime -gt "03/01/2013" -and $_.CreationTime -lt "03/31/2013" }
Select-Object FullName, CreationTime, @{Name="Mbytes";Expression={$_.Length/1Kb}}, @{Name="Age";Expression={(((Get-Date) - $_.CreationTime).Days)}} | 
Export-Csv 'PATH\scans.csv'

Ответ 3

Исправлено...

Get-ChildItem C:\Windows\ -recurse -include @("*.txt*","*.pdf") |
Where-Object {$_.CreationTime -gt "01/01/2013" -and $_.CreationTime -lt "12/02/2014"} | 
Select-Object FullName, CreationTime, @{Name="Mbytes";Expression={$_.Length/1Kb}}, @{Name="Age";Expression={(((Get-Date) - $_.CreationTime).Days)}} | 
Export-Csv C:\search_TXT-and-PDF_files_01012013-to-12022014_sort.txt