Get-TypeData
Возвращает данные расширенного типа в текущем сеансе.
Синтаксис
Default (по умолчанию)
Get-TypeData
[[-TypeName] <String[]>]
[<CommonParameters>]
Описание
Командлет Get-TypeData
получает данные расширенного типа в текущем сеансе. К ним относятся данные типа, добавленные в сеанс с помощью файла Types.ps1xml
и динамические данные типа, добавленные с помощью командлета Update-TypeData
с использованием параметра.
Можно использовать данные расширенного типа, которые возвращает Get-TypeData
, чтобы проверить данные типа в сеансе и отправить их командлетам Update-TypeData
и Remove-TypeData
.
Данные расширенного типа добавляют свойства и методы к объектам в PowerShell. Добавленные свойства и методы можно использовать так же, как и свойства и методы, определенные в типе объекта. Однако при написании скриптов следует учитывать, что добавленные свойства и методы могут не присутствовать в каждом сеансе PowerShell.
Дополнительные сведения о файлах Types.ps1xml
см. в about_Types.ps1xml. Дополнительные сведения о данных динамического типа, которые добавляет командлет Update-TypeData
, см. раздел Update-TypeData
.
Этот командлет был введён в Windows PowerShell 3.0.
Примеры
Пример 1. Получение всех данных расширенного типа
Этот пример получает все данные расширенного типа в текущем сеансе.
Get-TypeData
Пример 2. Получение данных типа по имени
В этом примере возвращаются все данные типа в текущем сеансе, имя которого имеет значение "System.IO".
Get-TypeData -TypeName System.IO.*
TypeName Members
-------- -------
System.IO.DirectoryInfo {[Mode, System.Management.Automation.Runspaces.CodePropert…
System.IO.FileInfo {[Mode, System.Management.Automation.Runspaces.CodePropert…
Пример 3. Получение блока скрипта, создающего значение свойства
Этот пример получает блок скрипта, который создает значение свойства EventID объектов EventLogEntry.
(Get-TypeData *EventLogEntry*).Members.EventID
GetScriptBlock SetScriptBlock IsHidden Name
-------------- -------------- -------- ----
$this.get_EventID() -band 0xFFFF False EventID
Пример 4. Получение блока скрипта, определяющего свойство для указанного объекта
В этом примере получен скриптовый блок, определяющий свойство DateTime для объектов System.DateTime в PowerShell.
(Get-TypeData -TypeName System.DateTime).Members["DateTime"].GetScriptBlock
if ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq "Date") {
"{0}" -f $this.ToLongDateString()
}
elseif ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq "Time") {
"{0}" -f $this.ToLongTimeString()
}
else {
"{0} {1}" -f $this.ToLongDateString(), $this.ToLongTimeString()
}
Команда использует командлет Get-TypeData
для получения данных расширенного типа для типа System.DataTime. Команда получает свойство Members объекта TypeData.
Свойство Members содержит хэш-таблицу свойств и методов, определенных данными расширенного типа. Каждый ключ в хэш-таблице "Члены" — это имя свойства или метода, а каждое значение — определение значения свойства или метода.
Команда получает ключ DateTime в Members и значение его свойства GetScriptBlock.
В выходных данных показан блок скрипта, который создает значение свойства DateTime каждого объекта System.DateTime в PowerShell.
Параметры
-TypeName
Указывает данные типа в виде массива только для типов с указанными именами. По умолчанию Get-TypeData
получает все типы в сеансе.
Введите имена типов или шаблоны имен. Требуются полные имена или шаблоны имен с подстановочными знаками, даже для типов в пространстве имен системы. Поддерживаются подстановочные знаки, а имя параметра TypeName является необязательным. Можно также передать имена типов в Get-TypeData
.
Свойства параметра
Тип: | String[] |
Default value: | None |
Поддерживаются подстановочные знаки: | True |
DontShow: | False |
Наборы параметров
(All)
Position: | 0 |
Обязательно: | False |
Значение из конвейера: | True |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
String
Строки, содержащие имена типов, можно передать в этот командлет.
Выходные данные
TypeData
Примечания
Get-TypeData
получает только данные расширенного типа в текущем сеансе. Он не получает данные расширенного типа, которые находятся на компьютере, но не были добавлены в текущий сеанс, например расширенные типы, определенные в модулях, которые не были импортированы в текущий сеанс.