Powershell - La variable $FormatEnumerationLimit

Pour me soutenir, vous pouvez vous abonner à la chaîne, partager et liker les vidéos, désactiver votre bloqueur de pub ou encore faire un don. Merci!

Bonjour,

un nouvel article pour présenter la variable $FormatEnumerationLimit et dans quel cas Format-Table -Wrap ne fonctionne pas.

Selon la taille de votre console et de la taille de la police, il est possible que le contenu ne soit pas tronqué dans mes commandes de démonstration. Vous pouvez dans Windows Terminal ou Powershell agrandir la taille de la police ponctuellement en appuyant sur CTRL et en tournant la molette de la souris pour avoir un résultat concluant.

# Prenons l'exemple suivant, où dependentservices est tronqué pour certains services
Get-Service | Format-Table -Property name, dependentservices
# Pour afficher le contenu tronqué, on est tenté de faire ça
Get-service | Format-Table -Property name, dependentservices -wrap
# Syntaxe qui fonctionne pourtant très bien dans ce contexte
Get-Process ShellExperienceHost | Format-Table -Property name,path
Get-Process ShellExperienceHost | Format-Table -Property name,path -wrap
# Comparer :
Get-Process ShellExperienceHost | Format-Table -Property name,path
Get-Service nsi | Format-Table -Property name, dependentservices
# La différence est dans les {}, elles indiquent une collection d'objets (Array).
# Pour afficher le contenu complet de dependentservices, je dois étendre la propriété
Get-Service nsi | Select-Object -ExpandProperty dependentservices
# ou
(Get-Service nsi).dependentservices
# On peut vérifier le type de dependentservices :
(Get-Service nsi | Select-Object -ExpandProperty dependentservices).gettype()
# Mais si je souhaite afficher le contenu de dependentservices pour tous les services, le résultat est illisible
Get-Service | Select-Object -ExpandProperty dependentservices
# On peut, dans ce cas, modifier une variable qui indique le nombre d'éléments à énumérer (4 par défaut).
# Afficher la valeur de la variable par défaut
$FormatEnumerationLimit
# Soit 4, le nombre de résultats maximum affichés dans la collection
# Modifions la valeur de $FormatEnumerationLimit
$FormatEnumerationLimit = 8
Get-Service nsi | Format-Table -Property name, dependentservices
# Il peut être nécessaire d'ajouter un -wrap en fonction du nombre de caractères supportés
# par la console et du nombre de caractères à afficher

Liens en relation