La cmdlet Format-List prend l’entrée dans le pipeline et produit une liste de colonnes verticale de toutes les propriétés spécifiées de chaque objet. Vous pouvez spécifier la propriété que vous souhaitez afficher en utilisant le paramètre Property. Si la cmdlet Format-List est appelée sans spécification d’aucun paramètre, toutes les propriétés sont produites. La cmdlet Format-List insère des retours automatiques dans les lignes au lieu de les tronquer. L’une des meilleures utilisations de la cmdlet Format-List est la réécriture de la sortie par défaut d’une cmdlet afin que vous puissiez extraire des informations supplémentaires et plus spécifiques.
Par exemple lorsque vous appelez la cmdlet Get-Mailbox, vous ne pouvez consulter qu’un nombre limité d’informations en format de tableau. Si vous canalisez la sortie de la cmdlet Get-Mailbox vers la cmdlet Format-List et ajoutez des paramètres pour obtenir les informations supplémentaires ou plus spécifiques que vous voulez consulter, vous pouvez extraire la sortie souhaitée.
Vous pouvez également spécifier un caractère générique « * » avec un nom de propriété partiel. Si vous incluez un caractère générique, vous pouvez établir la correspondance entre des propriétés multiples sans devoir taper chaque nom de propriété individuellement. Par exemple, Get-Mailbox | Format-List -Property Email* renvoie toutes les propriétés commençant par Email.
Les exemples suivants montrent les différentes manières dont vous pouvez consulter les mêmes données renvoyées par la cmdlet Get-Mailbox .
Get-MailBox TestUser1
Name Alias Server StorageQuota
---- ----- ------ ------------
TestUser1 TestUser1 e12 unlimited
Dans ce premier exemple, la cmdlet Get-Mailbox est appelée sans mise en forme spécifique pour que la sortie par défaut soit au format tableau et qu’elle contienne un ensemble de propriétés prédéterminées.
Get-Mailbox TestUser1 | Format-List -Property Name,Alias,EmailAddresses
Name : TestUser1
Alias : TestUser1
EmailAddresses : {SMTP:TestUser1@contoso.com, X400:c=US;a= ;p=Contoso;o=Exchange;s=TestUser1;}
Get-Mailbox TestUser1 | Format-List -Property Name, Alias, Email*
Dans le deuxième exemple, la sortie de la cmdlet Get-Mailbox est canalisée vers la cmdlet, Format-List, avec des propriétés spécifiques.. Comme vous pouvez le constater, la mise en forme et le contenu de la sortie sont sensiblement différents.
Name : Test User
Alias : TestUser1
EmailAddresses : {SMTP:TestUser1@contoso.com, X400:c=US;a= ;p=First
Organization;o=Exchange;s=User;g=Test;}
EmailAddressPolicyEnabled : True
Dans le dernier exemple, la sortie de la cmdlet Get-Mailbox est canalisée vers le cmdlet, Format-List, comme dans le deuxième exemple. Cependant, dans le dernier exemple, un caractère générique est utilisé pour faire correspondre toutes les propriétés commençant par Email.
Si plusieurs objets sont transmis à la cmdlet Format-List, toutes les propriétés spécifiées pour un objet sont affichées et regroupées par objet. L’ordre d’affichage dépend du paramètre par défaut de la cmdlet. Il s’agit en général du paramètre Name ou Identity. Par exemple, lors de l'appel de la cmdlet Get-Childitem, l’ordre d’affichage par défaut est l'ordre alphabétique des noms de fichier. Pour modifier ce comportement, vous devez appeler la cmdlet Format-List, avec le paramètre GroupBy et le nom d’une valeur de propriété en fonction de laquelle vous souhaitez regrouper la sortie. Par exemple, la commande suivante affiche la liste de tous les fichiers dans un répertoire et regroupe ces fichiers par extension.
Get-Childitem | Format-List Name,Length -GroupBy Extension
Extension: .xml
Name : Config_01.xml
Length : 5627
Name : Config_02.xml
Length : 3901
Extension: .bmp
Name : Image_01.bmp
Length : 746550
Name : Image_02.bmp
Length : 746550
Extension: .txt
Name : Text_01.txt
Length : 16822
Name : Text_02.txt
Length : 9835
Dans cet exemple, la cmdlet Format-List a regroupé les éléments par la propriété Extension spécifiée par le paramètre GroupBy. Vous pouvez utiliser le paramètre GroupBy avec n’importe quelle propriété valide pour les objets dans le flux du pipeline.