Get-FormatData
Возвращает данные форматирования в текущем сеансе.
Синтаксис
Get-FormatData
[[-TypeName] <String[]>]
[-PowerShellVersion <Version>]
[<CommonParameters>]
Описание
Командлет Get-FormatData
получает данные форматирования в текущем сеансе.
Данные форматирования в сеансе включают форматирование данных из Format.ps1xml
файлов форматирования, таких как в каталоге $PSHOME
, форматирование данных для модулей, импортируемых в сеанс, и форматирование данных для команд, импортируемых в сеанс, с помощью командлета Import-PSSession
.
Этот командлет можно использовать для проверки данных форматирования. Затем можно использовать командлет Export-FormatData
для сериализации объектов, преобразования их в XML и их сохранения в Format.ps1xml
файлах.
Дополнительные сведения о форматировании файлов в PowerShell см. в about_Format.ps1xml.
Примеры
Пример 1. Получение всех данных форматирования
Этот пример получает все данные форматирования в сеансе.
Get-FormatData -PowerShellVersion 5.1
Важный
Чтобы получить полные сведения о форматировании типов, всегда следует включить параметр PowerShellVersion со значением 5.1
при использовании локального вызова Get-FormatData
. Если параметр и значение опущены, вы можете не получить все правильные сведения о типе.
Пример 2. Получение данных форматирования по имени типа
В этом примере возвращается элементы данных форматирования, имена которых начинаются с System.Management.Automation.Cmd
.
Get-FormatData -TypeName 'System.Management.Automation.Cmd*' -PowerShellVersion 5.1
Пример 3. Проверка объекта данных форматирования
В этом примере показано, как получить объект данных форматирования и проверить его свойства.
$F = Get-FormatData -TypeName 'System.Management.Automation.Cmd*' -PowerShellVersion 5.1
$F
TypeName FormatViewDefinition
-------- --------------------
HelpInfoShort {help , TableControl}
$F.FormatViewDefinition[0].control
Headers : {System.Management.Automation.TableControlColumnHeader,
System.Management.Automation.TableControlColumnHeader,
System.Management.Automation.TableControlColumnHeader,
System.Management.Automation.TableControlColumnHeader}
Rows : {System.Management.Automation.TableControlRow}
AutoSize : False
HideTableHeaders : False
GroupBy :
OutOfBand : False
$F.FormatViewDefinition[0].control.Headers
Label Alignment Width
----- --------- -----
CommandType Undefined 15
Name Undefined 50
Version Undefined 10
Source Undefined 0
Пример 4. Получение данных форматирования и его экспорт
В этом примере показано, как использовать Get-FormatData
и Export-FormatData
для экспорта данных форматирования, добавленных модулем.
$A = Get-FormatData -PowerShellVersion 5.1
Import-Module bitstransfer
$B = Get-FormatData -PowerShellVersion 5.1
Compare-Object $A $B
InputObject SideIndicator
----------- -------------
Microsoft.BackgroundIntelligentTransfer.Management.BitsJob =>
Get-FormatData *bits* | Export-FormatData -FilePath c:\test\bits.format.ps1xml
Get-Content c:\test\bits.format.ps1xml
<?xml version="1.0" encoding="utf-8"?><Configuration><ViewDefinitions>
<View><Name>Microsoft.BackgroundIntelligentTransfer.Management.BitsJob</Name>
...
Первые четыре команды используют командлеты
Пятая команда использует командлет Get-FormatData
для получения типа формата, который добавляет модуль BitsTrans fer. Он использует оператор конвейера (|
) для отправки объекта типа формата в командлет Export-FormatData
, который преобразует его обратно в XML и сохраняет его в указанном format.ps1xml
файле.
Последняя команда содержит фрагмент содержимого файла format.ps1xml
.
Пример 5. Получение данных форматирования на основе указанной версии PowerShell
В этом примере показано, как использовать Get-FormatData
для получения данных формата для указанной версии typeName и PowerShell.
Get-FormatData -TypeName 'Microsoft.PowerShell.Utility.FileHash' -PowerShellVersion $PSVersionTable.PSVersion
TypeNames FormatViewDefinition
--------- --------------------
{Microsoft.PowerShell.Utility.FileHash} {Microsoft.PowerShell.Utility.FileHash}
Параметры
-PowerShellVersion
Укажите версию PowerShell для данных форматирования. Введите два цифры, разделенные точкой.
Этот параметр был добавлен в PowerShell 5.1 для повышения совместимости при удаленном взаимодействии компьютеров с более старыми версиями PowerShell.
Тип: | Version |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-TypeName
Указывает имена типов, которые этот командлет получает для данных форматирования. Введите имена типов. Разрешены подстановочные знаки.
Тип: | String[] |
Position: | 0 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
Входные данные
None
Входные данные в этот командлет невозможно передать.