Chame isso de peculiaridade ou recurso, mas isso tem a ver com o modo como o PowerShell lida com listas com apenas 1 comprimento. Ele "achata" eles para que não seja mais uma lista, mas um único objeto FileInfo. Como o objeto FileInfo não tem uma propriedade Count, você não obtém resultado. Existem algumas maneiras de contornar isso:
-
Força o valor retornado a permanecer como uma matriz, agrupando-o no operador de matriz
@()
:@(Get-ChildItem c:\pstdump -filter "*.pst").Count
-
Use o cmdlet Measure-Object:
(Get-ChildItem c:\pstdump -filter "*.pst" | measure).Count