Добавляем пользовательские типы данных к объектам PowerShell

Каждый объект PowerShell принадлежит к какому-либо типу данных. Например, объект процесса — это экземпляр типа System.Diagnostics.Process.

Get-Process | Get-Member
   TypeName: System.Diagnostics.Process
...

Объекты, являющиеся результатом выполнения команд PowerShell, уже принадлежат к определенному типу данных, однако это не мешает нам добавить к ним нужный нам собственный тип.

Еще более полезной эта возможность становится при работе с пользовательскими объектами — System.Management.Automation.PSCustomObject.

[PSCustomObject]@{
    Name = 'Object'
    Description = 'Object Description'
}

Читать далее