Export-FormatData
Сохраняет данные форматирования из текущего сеанса в файле форматирования.
Синтаксис
Export-FormatData
-InputObject <ExtendedTypeDefinition[]>
-Path <String>
[-Force]
[-NoClobber]
[-IncludeScriptBlock]
[<CommonParameters>]
Export-FormatData
-InputObject <ExtendedTypeDefinition[]>
-LiteralPath <String>
[-Force]
[-NoClobber]
[-IncludeScriptBlock]
[<CommonParameters>]
Описание
Командлет Export-FormatData
создает файлы форматирования PowerShell (format.ps1xml) из объектов форматирования в текущем сеансе. Он принимает объекты ExtendedTypeDefinition, которые Get-FormatData
возвращаются и сохраняют их в файле в формате XML.
PowerShell использует данные в файлах форматирования (format.ps1xml) для создания отображения объектов Microsoft .NET Framework по умолчанию в сеансе. Вы можете просматривать и изменять файлы форматирования и использовать командлет Update-FormatData для добавления данных форматирования в сеанс.
Дополнительные сведения о форматировании файлов в PowerShell см. в about_Format.ps1xml.
Примеры
Пример 1. Экспорт данных формата сеанса
Get-FormatData -TypeName "*" | Export-FormatData -Path "allformat.ps1xml" -IncludeScriptBlock
Эта команда экспортирует все данные формата в сеансе в файл AllFormat.ps1xml.
Команда использует командлет Get-FormatData
для получения данных формата в сеансе. Значение *
(все) для параметра TypeName направляет командлет для получения всех данных в сеансе.
Команда использует оператор конвейера (|
) для отправки данных формата из команды Get-FormatData
командлету Export-FormatData
, который экспортирует данные формата в файл AllFormat.ps1.
Команда
Пример 2. Экспорт данных формата для типа
$F = Get-FormatData -TypeName "helpinfoshort"
Export-FormatData -InputObject $F -Path "c:\test\help.format.ps1xml" -IncludeScriptBlock
Эти команды экспортируют данные формата для типа HelpInfoShort в файл Help.format.ps1xml.
Первая команда использует командлет Get-FormatData
для получения данных формата для типа HelpInfoShort и сохраняет его в переменной $F
.
Вторая команда использует параметр InputObject командлета Export-FormatData
для ввода данных формата, сохраненных в переменной $F
. Он также использует параметр IncludeScriptBlock для включения блоков скриптов в выходные данные.
Пример 3. Экспорт данных формата без блока скрипта
Get-FormatData -TypeName "System.Diagnostics.Process" | Export-FormatData -Path process.format.ps1xml
Update-FormatData -PrependPath ".\process.format.ps1xml"
Get-Process p*
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
323 5600 powershell
336 3900 powershell_ise
138 4076 PresentationFontCache
В этом примере показан эффект пропуска параметра IncludeScriptBlock из команды Export-FormatData
.
Первая команда использует командлет Get-FormatData
для получения данных формата для объекта System.Diagnostics.Process, возвращаемого командлетом Get-Process. Команда использует оператор конвейера (|
) для отправки данных форматирования в командлет Export-FormatData
, который экспортирует его в файл Process.format.ps1xml в текущем каталоге.
В этом случае команда Export-FormatData
не использует параметр IncludeScriptBlock.
Вторая команда использует командлет Update-FormatData
для добавления файла Process.format.ps1xml в текущий сеанс. Команда использует параметр PrependPath, чтобы убедиться, что данные форматирования для объектов процесса в файле Process.format.ps1xml найдены до стандартного форматирования для объектов процесса.
Третья команда показывает эффекты этого изменения. Команда использует командлет Get-Process
для получения процессов с именами, начинающимися с P. В выходных данных показано, что значения свойств, вычисляемые с помощью блоков скриптов, отсутствуют на экране.
Параметры
-Force
Принудительно выполняется команда без запроса подтверждения пользователя.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-IncludeScriptBlock
Указывает, экспортируются ли блоки скриптов в данных формата.
Так как блоки скриптов содержат код и могут использоваться злонамеренно, они по умолчанию не экспортируются.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-InputObject
Указывает экспортируемые объекты данных формата. Введите переменную, содержащую объекты или команду, которая получает объекты, например команду Get-FormatData
. Можно также передать объекты из Get-FormatData
в Export-FormatData
.
Тип: | ExtendedTypeDefinition[] |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-LiteralPath
Указывает расположение выходного файла. В отличие от параметра пути
Тип: | String |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-NoClobber
Указывает, что командлет не перезаписывает существующие файлы. По умолчанию Export-FormatData
перезаписывает файлы без предупреждения, если файл не имеет атрибута только для чтения.
Чтобы направить Export-FormatData
на перезапись файлов только для чтения, используйте параметр Force.
Тип: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Path
Указывает расположение выходного файла.
Введите путь (необязательно) и имя файла с расширением имени файла format.ps1xml.
Если путь не указан, Export-FormatData
создает файл в текущем каталоге.
Если вы используете расширение имени файла, отличное от PS1xml, командлет Update-FormatData
не распознает файл.
Если указать существующий файл, Export-FormatData
перезаписывает файл без предупреждения, если файл не имеет атрибута только для чтения. Чтобы перезаписать файл только для чтения, используйте параметр Force. Чтобы предотвратить перезапись файлов, используйте параметр NoClobber.
Тип: | String |
Aliases: | FilePath |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
Вы можете передать объекты ExtendedTypeDefinition из Get-FormatData
в этот командлет.
Выходные данные
None
Этот командлет не возвращает выходные данные. Он создает файл и сохраняет его в указанном пути.
Примечания
- Чтобы использовать любой файл форматирования, включая экспортируемый файл форматирования, политика выполнения сеанса должна разрешить выполнение скриптов и файлов конфигурации. Дополнительные сведения см. в about_Execution_Policies.