En relation:
Comment puis-je écrire un script pour compter les fichiers modifiés dans un mois donné?
Lorsque j'essaie d'obtenir un nombre d'éléments, par exemple avec (gci).count
pour compter les fichiers dans un dossier, PowerShell ne renvoie aucune sortie pour les listes vides ou les listes contenant seulement un élément. Cela fonctionne bien pour les listes contenant plusieurs éléments.
Comment puis-je obtenir PowerShell pour renvoyer des valeurs numériques appropriées pour tous les cas? C'est-à-dire: comment puis-je obtenir un zéro réel pour les listes vides, et sortir un pour les listes d'un seul élément?
Mon cas d'utilisation particulier, tel que décrit plus en détail dans la question liée ci-dessus, consiste à obtenir un nombre d'éléments dans une liste résultant de la gci
une gci
commande gci
vers l' where
.
Ceci a trait au fait que powershell, lors du renvoi d'un tableau de 1 élément, il suffit d'effondrer le tableau dans cet élément unique.
Avant la version 3, cela résulterait d'un objet sans propriété de count
attendu et votre résultat serait vide. Cela a été "corrigé" dans la version 3 .
Donc vous avez 2 options:
Activez la solution de contournement suivante lorsque vous imprimez toujours vos résultats en tant que type de tableau @()
:
@ (Gci) .count