РАЗДЕЛ
    about_Properties

КРАТКОЕ ОПИСАНИЕ
    Содержит описание использования свойств объектов в Windows 
    PowerShell. 


ПОЛНОЕ ОПИСАНИЕ
    В Windows PowerShell используются структурированные наборы 
    данных, называемые объектами, для представления элементов в 
    хранилищах данных или состояния компьютера.
    Чаще всего вы работаете с объектами, которые являются частью 
    инфраструктуры Microsoft .NET Framework, но также можете 
    создавать пользовательские объекты в Windows PowerShell.


    Связь между элементом и его объектом очень тесная. При изменении 
    объекта изменяется и представляемый им элемент. Например, получая 
    файл в Windows PowerShell, вы получаете не сам файл.
    Вы получаете объект FileInfo, который представляет файл. Когда 
    изменяется объект FileInfo, файл также изменяется.


    Большинство объектов имеет свойства. Свойства - это данные, 
    связанные с объектом. Эти данные описывают объект. Например, 
    объект FileInfo имеет свойство Length, описывающее размер файла, 
    представленного объектом.


  Свойства объектов

     Чтобы вывести список свойств объекта, используйте командлет 
     Get-Member. Например, чтобы получить список свойств объекта 
     FileInfo, используйте командлет Get-ChildItem для получения 
     объекта FileInfo, представляющего файл. Затем с помощью 
     оператора конвейера (|) передайте объект FileInfo командлету 
     Get-Member. Следующая команда получает файл PowerShell.exe и 
     отправляет его командлету Get-Member. Автоматическая переменная 
     $Pshome содержит путь к каталогу установки Windows PowerShell.

         get-childitem $pshome\powershell.exe | get-member


     В выходных данных команды содержатся элементы объекта FileInfo. 
     Элементы включают как свойства, так и методы. Работая в Windows 
     PowerShell, вы имеете доступ ко всем элементам объектов.


     Чтобы вывести только свойства объекта, но не методы, используйте 
     параметр MemberType командлета Get-Member со значением 
     "property", как показано в следующем примере.

         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;}

     Узнав о свойствах, вы можете применить их в командах Windows 
     PowerShell.


  Значения свойств
    
     Все объекты определенного типа имеют одинаковые свойства, но 
     значения свойств описывают конкретный объект. Например, каждый 
     объект FileInfo имеет свойство CreationTime, но значение этого 
     свойства различно для каждого файла.


     Самый простой способ получить значения свойств объекта - 
     использовать метод точки. Укажите объект. Например, введите 
     переменную, содержащую объект, или команду, которая получает 
     этот объект. Затем введите точку (.) и имя свойства.


     Например, следующая команда отобразит значение свойства 
     CreationTime файла PowerShell.exe. Команда Get-ChildItem 
     возвращает объект FileInfo, представляющий файл PowerShell.exe. 
     Команда заключена в скобки, чтобы гарантировать ее выполнение до 
     того, как будет получен доступ к какому-либо свойству. За 
     командой Get-ChildItem следует точка и имя свойства CreationTime:

         C:\PS> (Get-ChildItem $pshome\powershell.exe).creationtime
         Вторник, 18 марта 2008 г., 0:07:52


     Также можно сохранить объект в переменной и затем извлечь его 
     свойства при помощи метода точки, как показано в следующем примере:

         C:\PS> $a = Get-ChildItem $pshome\powershell.exe
         C:\PS> $a.CreationTime
         Вторник, 18 марта 2008 г., 0:07:52


     Также можно использовать командлеты Select-Object и Format-List 
     для отображения значений свойств объекта. Командлеты 
     Select-Object и Format-List оба имеют параметр Property. При 
     помощи параметра Property можно задать одно или более свойств и 
     их значения. Либо можно использовать подстановочный знак (*) для 
     обозначения всех свойств.


     Например, следующая команда отобразит значения всех свойств 
     файла 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:          Microsoft® Windows® Operating System
                             ProductVersion:   6.1.6570.1
                             Debug:            False
                             Patched:          False
                             PreRelease:       False
                             PrivateBuild:     True
                             SpecialBuild:     False
                             Language:         English (United States)

         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      : 3/18/2008 12:07:52 AM
         CreationTimeUtc   : 3/18/2008 7:07:52 AM
         LastAccessTime    : 3/19/2008 8:13:58 AM
         LastAccessTimeUtc : 3/19/2008 3:13:58 PM
         LastWriteTime     : 3/18/2008 12:07:52 AM
         LastWriteTimeUtc  : 3/18/2008 7:07:52 AM
         Attributes        : Archive
        

СМ. ТАКЖЕ
    about_Objects
    Get-Member
    Select-Object
    Format-List




Содержание