.count%20retorne%20valores%20num%C3%A9ricos%20adequados%20para%20listas%20vazias%20ou%20de%20item%20%C3%BAnico%3F.png)
Relacionado:
Como posso escrever um script para contar arquivos modificados em um determinado mês?
Quando tento obter uma contagem de itens, por exemplo, para (gci).count
contar arquivos em uma pasta, o PowerShell não retorna nenhuma saída para listas vazias ou listas contendo apenas um item. Porém, funciona bem para listas que contêm vários itens.
Como posso fazer com que o PowerShell retorne valores numéricos adequados para todos os casos? ou seja: como posso gerar um zero real para listas vazias e um para listas de item único?
Meu caso de uso específico, conforme descrito mais detalhadamente na pergunta relacionada acima, é obter uma contagem de itens em uma lista resultante da canalização da gci
saída de um comando para where
.
Responder1
Isso tem a ver com o fato de que o PowerShell, ao retornar uma matriz de 1 item, simplesmente reduzirá a matriz naquele único item.
Antes da versão 3, o resultado seria um objeto sem a count
propriedade esperada e seu resultado estaria vazio. Isso foi "consertado" emversão 3.
Então você tem 2 opções:
- Atualize para Powershell v3
Aplique a seguinte solução alternativa onde você sempre agrupa seus resultados como um tipo de matriz
@()
:@(gci).contagem