Export-FormatData (Microsoft.PowerShell.Utility)
Export-FormatData
- Модуль:
- Microsoft.PowerShell.Utility
Сохраняет данные форматирования из текущего сеанса в файле форматирования.
Синтаксис
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 для получения данных формата в сеансе. Значение * (all) для параметра TypeName предписывает командлету получить все данные в сеансе.
Команда использует оператор конвейера (|) для отправки данных формата из команды Get-FormatData в командлет Export-FormatData, который экспортирует данные формата в файл AllFormat.ps1.
Команда Export-FormatData использует параметр IncludeScriptBlock для включения блоков скрипта в данные формата в файле.
Пример 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
- Позиция:
Именованный
- Значение по умолчанию:
None
- Необходимый:
False
- Примите ввод конвейера:
False
- Принимайте подстановочные знаки:
False
-IncludeScriptBlock
Указывает, экспортируются ли блоки скриптов в данных формата.
Поскольку блоки сценариев содержат код и могут быть использованы злоумышленниками, по умолчанию они не экспортируются.
- Тип :
SwitchParameter
- Позиция:
Именованный
- Значение по умолчанию:
None
- Необходимый:
False
- Примите ввод конвейера:
False
- Принимайте подстановочные знаки:
False
-InputObject
Указывает формат объектов данных для экспорта. Введите переменную, содержащую объекты, или команду, получающую объекты, например команду Get-FormatData. Вы также можете передать объекты из Get-FormatData в Export-FormatData.
- Тип :
РасширенноеОпределениеТипа[]
- Позиция:
Именованный
- Значение по умолчанию:
None
- Необходимый:
True
- Примите ввод конвейера:
True
- Принимайте подстановочные знаки:
False
-LiteralPath
Указывает расположение выходного файла. В отличие от параметра Path, значение LiteralPath используется точно так, как оно введено. Никакие символы не интерпретируются как подстановочные знаки. Если путь содержит escape-символы, заключите его в одинарные кавычки. Одинарные кавычки сообщают PowerShell не интерпретировать никакие символы как escape-последовательности.
- Тип :
String
- Псевдонимы:
PSPath, LP
- Позиция:
Именованный
- Значение по умолчанию:
None
- Необходимый:
True
- Примите ввод конвейера:
False
- Принимайте подстановочные знаки:
False
-NoClobber
Указывает, что командлет не перезаписывает существующие файлы. По умолчанию Export-FormatData перезаписывает файлы без предупреждения, если файл не имеет атрибута «только для чтения».
Чтобы указать Export-FormatData перезаписывать файлы, доступные только для чтения, используйте параметр Force.
- Тип :
SwitchParameter
- Псевдонимы:
NoOverwrite
- Позиция:
Именованный
- Значение по умолчанию:
None
- Необходимый:
False
- Примите ввод конвейера:
False
- Принимайте подстановочные знаки:
False
-Path
Указывает расположение выходного файла. Введите путь (необязательно) и имя файла с расширением format.ps1xml. Если вы опустите путь, Export-FormatData создаст файл в текущем каталоге.
Если вы используете расширение имени файла, отличное от .ps1xml, командлет Update-FormatData не распознает файл.
Если вы укажете существующий файл, Export-FormatData перезапишет файл без предупреждения, если только файл не имеет атрибута «только для чтения». Чтобы перезаписать файл, доступный только для чтения, используйте параметр Force. Чтобы предотвратить перезапись файлов, используйте параметр NoClobber.
- Тип :
String
- Псевдонимы:
FilePath
- Позиция:
Именованный
- Значение по умолчанию:
None
- Необходимый:
True
- Примите ввод конвейера:
False
- Принимайте подстановочные знаки:
False
Входы
Определение расширенного типа
В этот командлет можно передать объекты ExtendedTypeDefinition из Get-FormatData.
Выходы
Нет
Этот командлет не возвращает никаких результатов. Он генерирует файл и сохраняет его по указанному пути.
Примечания
- Чтобы использовать любой файл форматирования, включая экспортированный файл форматирования, политика выполнения сеанса должна разрешать запуск сценариев и файлов конфигурации. Дополнительные сведения см. в разделе about_Execution_Policies.