RUBRIQUE about_Properties DESCRIPTION COURTE Décrit comment utiliser les propriétés d'objet dans Windows PowerShell. DESCRIPTION LONGUE Windows PowerShell utilise des collections structurées d'informations, appelées " objets ", pour représenter les éléments des magasins de données ou l'état de l'ordinateur. En général, vous travaillez avec l'objet qui fait partie du Microsoft .NET Framework, mais vous pouvez également créer des objets personnalisés dans Windows PowerShell. L'association entre un élément et son objet est très étroite. Lorsque vous modifiez un objet, vous modifiez l'élément qu'il représente. Par exemple, lorsque vous obtenez un fichier dans Windows PowerShell, vous n'obtenez pas le fichier réel. Au lieu de cela, vous obtenez un objet FileInfo qui représente le fichier. Lorsque vous modifiez l'objet FileInfo, le fichier change aussi. La plupart des objets ont des propriétés. Les propriétés sont les données associées à un objet. Ces données décrivent l'objet. Par exemple, un objet FileInfo a une propriété Length (Longueur), qui décrit la taille du fichier représenté par l'objet. Propriétés d'objets Pour répertorier les propriétés d'un objet, utilisez l'applet de commande Get-Member. Par exemple, pour obtenir les propriétés d'un objet FileInfo, utilisez l'applet de commande Get-ChildItem afin d'obtenir l'objet FileInfo qui représente un fichier. Ensuite, utilisez un opérateur de pipeline (|) pour envoyer l'objet FileInfo à Get-Member. La commande suivante obtient le fichier PowerShell.exe et l'envoie à Get-Member. La variable automatique $Pshome contient le chemin d'accès du répertoire d'installation de Windows PowerShell. get-childitem $pshome\powershell.exe | get-member La sortie de la commande répertorie les membres de l'objet FileInfo. Les membres incluent à la fois les propriétés et les méthodes. Lorsque vous travaillez dans Windows PowerShell, vous avez accès à tous les membres des objets. Pour obtenir uniquement les propriétés d'un objet et pas les méthodes, utilisez le paramètre MemberType de l'applet de commande Get-Member avec une valeur " property " (propriété), comme indiqué dans l'exemple suivant. get-childitem $pshome\powershell.exe | get-member -membertype property TypeName: System.IO.FileInfo Name MemberType Definition ---- ---------- ---------- Attributes Property System.IO.FileAttributes Attributes {get;set;} CreationTime Property System.DateTime CreationTime {get;set;} CreationTimeUtc Property System.DateTime CreationTimeUtc {get;set;} Directory Property System.IO.DirectoryInfo Directory {get;} DirectoryName Property System.String DirectoryName {get;} Exists Property System.Boolean Exists {get;} Extension Property System.String Extension {get;} FullName Property System.String FullName {get;} IsReadOnly Property System.Boolean IsReadOnly {get;set;} LastAccessTime Property System.DateTime LastAccessTime {get;set;} LastAccessTimeUtc Property System.DateTime LastAccessTimeUtc {get;set;} LastWriteTime Property System.DateTime LastWriteTime {get;set;} LastWriteTimeUtc Property System.DateTime LastWriteTimeUtc {get;set;} Length Property System.Int64 Length {get;} Name Property System.String Name {get;} Après avoir trouvé les propriétés, vous pouvez les utiliser dans vos commandes Windows PowerShell. Valeurs de propriété Bien que tous les objets d'un type spécifique aient les mêmes propriétés, les valeurs de ces propriétés décrivent l'objet particulier. Par exemple, chaque objet FileInfo a une propriété CreationTime, mais la valeur de cette propriété diffère pour chaque fichier. La méthode la plus courante pour obtenir les valeurs des propriétés d'un objet consiste à utiliser la méthode de point. Tapez une référence à l'objet, telle qu'une variable contenant l'objet ou une commande permettant de l'obtenir. Ensuite, tapez un point (.) suivi du nom de propriété. Par exemple, la commande suivante affiche la valeur de la propriété CreationTime du fichier PowerShell.exe. La commande Get-ChildItem retourne un objet FileInfo qui représente le fichier PowerShell.exe. La commande est mise entre parenthèses pour qu'elle soit exécutée avant tout accès aux propriétés. La commande Get-ChildItem est suivie d'un point et du nom de la propriété CreationTime, comme suit : C:\PS> (Get-ChildItem $pshome\powershell.exe).creationtime Mardi 18 mars 2008 12:07:52 Vous pouvez également enregistrer un objet dans une variable, puis obtenir ses propriétés via la méthode de point, comme indiqué dans l'exemple suivant : C:\PS> $a = Get-ChildItem $pshome\powershell.exe C:\PS> $a.CreationTime Mardi 18 mars 2008 12:07:52 Vous pouvez également utiliser les applets de commande Select-Object et Format-List pour afficher les valeurs de propriété d'un objet. Select-Object et Format-List ont chacune un paramètre Property. Vous pouvez utiliser le paramètre Property pour spécifier une ou plusieurs propriétés et leur valeur. Sinon, vous pouvez utiliser le caractère générique (*) pour représenter toutes les propriétés. Par exemple, la commande suivante affiche les valeurs de toutes les propriétés du fichier PowerShell.exe. C:\PS> Get-ChildItem $pshome\powershell.exe | Format-List -property * PSPath : Microsoft.PowerShell.Core\FileSystem::C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe PSParentPath : Microsoft.PowerShell.Core\FileSystem::C:\Windows\system32\WindowsPowerShell\v1.0 PSChildName : powershell.exe PSDrive : C PSProvider : Microsoft.PowerShell.Core\FileSystem PSIsContainer : False VersionInfo : File: C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe InternalName: POWERSHELL OriginalFilename: PowerShell.EXE.MUI File Version: 6.1.6570.1 (fbl_srv_powershell(nigels).070711-0102) FileDescription: PowerShell.EXE Product: Système d'exploitation Microsoft® Windows® ProductVersion: 6.1.6570.1 Debug: False Patched: False PreRelease: False PrivateBuild: True SpecialBuild: False Language: Anglais (États-Unis) BaseName : powershell Mode : -a--- Name : powershell.exe Length : 160256 DirectoryName : C:\Windows\system32\WindowsPowerShell\v1.0 Directory : C:\Windows\system32\WindowsPowerShell\v1.0 IsReadOnly : False Exists : True FullName : C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe Extension : .exe CreationTime : 18/03/2008 12:07:52 CreationTimeUtc : 18/03/2008 7:07:52 LastAccessTime : 19/03/2008 8:13:58 LastAccessTimeUtc : 19/03/2008 15:13:58 LastWriteTime : 18/03/2008 12:07:52 LastWriteTimeUtc : 18/03/2008 7:07:52 Attributes : Archive VOIR AUSSI about_Objects Get-Member Select-Object Format-List