Поделиться через


Export-FormatData

Сохраняет данные форматирования текущего сеанса в файле форматирования.

Синтаксис

Export-FormatData
      -InputObject <ExtendedTypeDefinition[]>
      -Path <String>
      [-Force]
      [-NoClobber]
      [-IncludeScriptBlock]
      [<CommonParameters>]
Export-FormatData
      -InputObject <ExtendedTypeDefinition[]>
      -LiteralPath <String>
      [-Force]
      [-NoClobber]
      [-IncludeScriptBlock]
      [<CommonParameters>]

Описание

Командлет Export-FormatData создает файлы форматирования Windows PowerShell (format.ps1xml) из объектов форматирования в текущем сеансе. Он принимает объекты ExtendedTypeDefinition , возвращающие Get-FormatData и сохраняющие их в файле в формате XML.

Среда Windows PowerShell использует данные из файлов форматирования (format.ps1xml) для стандартного отображения объектов Microsoft .NET Framework в рамках сеанса. Вы можете просматривать и изменять файлы форматирования и использовать командлет Update-FormatData для добавления данных форматирования в сеанс.

Дополнительные сведения о форматировании файлов в Windows 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.

Команда 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
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

Задает расположение выходного файла. В отличие от параметра Path, значение LiteralPath используется именно так, как оно введено. Никакие символы не интерпретируются как знаки подстановки. Если путь содержит escape-символы, заключите его в одинарные кавычки. Это позволит Windows PowerShell не интерпретировать какие-либо символы как символы Escape-последовательности.

Тип:String
Aliases:PSPath
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

Объекты ExtendedTypeDefinition можно передать из Get-FormatData этого командлета.

Выходные данные

None

Этот командлет не возвращает выходные данные. Он создает файл и сохраняет его по указанному пути.

Примечания

  • Для использования любого файла форматирования, включая экспортированный, политика выполнения сеанса должна разрешать запуск сценариев и файлов конфигурации. Дополнительную информацию см. в разделе about_Execution_Policies.