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

Синтаксис

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

Описание

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

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

Дополнительные сведения о файлах форматирования в Windows PowerShell см. в разделе about_Format.ps1xml.

Параметры

-Force

Перезаписывает существующий выходной файл, даже если для него установлен атрибут "только чтение".

Обязательно?

false

Позиция?

named

Значение по умолчанию

False

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-IncludeScriptBlock

Определяет, экспортируются ли блоки скриптов, содержащиеся в данных форматирования.

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

Обязательно?

false

Позиция?

named

Значение по умолчанию

False

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-InputObject <ExtendedTypeDefinition[]>

Задает экспортируемые объекты форматирования данных. Введите переменную, содержащую объекты, либо команду, получающую объекты, например Get-FormatData. Кроме того, можно передать объекты командлету Export-FormatData от командлета Get-FormatData по конвейеру.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

true (ByValue)

Принимать подстановочные знаки?

false

-NoClobber

Запрещает командлету перезаписывать существующие файлы. По умолчанию командлет Export-FormatData без предупреждения перезаписывает файлы, для которых не задан атрибут "только чтение".

Чтобы задать командлету Export-FormatData принудительную перезапись файлов с атрибутом "только чтение", используйте параметр Force.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Path <string>

Задает расположение выходного файла. Укажите путь (необязательно) и имя файла с расширением format.ps1xml. Если путь не указан, командлет Export-FormatData создает файл в текущем каталоге.

Если используется расширение, отличное от PS1XML, командлет Update-FormatData не распознает файл.

Если указан существующий файл, командлет Export-FormatData перезаписывает имеющийся файл без предупреждения, если этому файлу не задан атрибут "только чтение". Чтобы перезаписать файл с атрибутом "только чтение", используйте параметр Force. Чтобы запретить перезапись существующих файлов, используйте параметр NoClobber.

Обязательно?

false

Позиция?

named

Значение по умолчанию

нет

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

<CommonParameters>

Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.

Ввод и вывод

Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.

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

System.Management.Automation.ExtendedTypeDefinition

Кроме того, можно передать объекты ExtendedTypeDefinition командлету Export-FormatData от командлета Get-FormatData по конвейеру.

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

Нет

Командлет Export-FormatData не возвращает никаких объектов. Он создает файл и сохраняет его по указанному пути.

Примечания

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

Пример 1

C:\PS>get-formatdata -typename * | export-formatdata -path allformat.ps1xml -IncludeScriptBlock

Описание
-----------
Эта команда экспортирует все данные форматирования из сеанса в файл AllFormat.ps1xml.

Эта команда получает все данные форматирования из сеанса с помощью командлета Get-FormatData. Оператор "*", используемый в качестве значения параметра TypeName, предписывает командлету получить все данные из сеанса.

В этой команде с помощью оператора конвейера (|) данные форматирования передаются от командлета Get-FormatData командлету Export-FormatData, экспортирующему все данные форматирования в файл AllFormat.ps1.

В команде Export-FormatData используется параметр IncludeScriptBlock, чтобы включить все блоки скриптов в данных форматирования в файле.






Пример 2

C:\PS>$f = get-formatdata -typename helpinfoshort

C:\PS> export-formatdata -inputObject $f -path c:\test\help.format.ps1xml -IncludeScriptBlock

Описание
-----------
Эти команды экспортируют данные форматирования для типа HelpInfoShort в файл Help.format.ps1xml.

Первая команда получает данные форматирования для типа HelpInfoShort с помощью командлета Get-FormatData и сохраняет их в переменной $f.

Вторая команда с помощью командлета Export-FormatData с параметром InputObject вводит данные форматирования, сохраненные в переменной $f. В ней также используется параметр IncludeScriptBlock, включающий блоки скриптов в выходные данные.






Пример 3

C:\PS>get-formatdata -typename System.Diagnostics.Process | export-FormatData -path process.format.ps1xml

C:\PS> Update-FormatData -prependPath .\process.format.ps1xml

C:\PS> 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

Описание
-----------
В этом примере показан результат выполнения команды Export-FormatData без параметра IncludeScriptBlock.

В первой команде с помощью командлета 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". По выходным данным видно, что значения свойств, вычисляемые с использованием блоков скриптов, не отображаются.






См. также