Remove-TypeData
Удаляет расширенные типы из текущего сеанса.
Синтаксис
Remove-TypeData
-TypeData <TypeData>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-TypeData
[-TypeName] <String>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-TypeData
-Path <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет Remove-TypeData
удаляет данные расширенного типа из текущего сеанса. Действие этого командлета распространяется только на текущий сеанс и на сеансы, созданные в его рамках.
Вы можете добавлять свойства и методы к объектам в PowerShell, определяя их в Update-TypeData
командах и Types.ps1xml
файлах. Remove-TypeData
удаляет эти расширенные свойства и методы из текущего сеанса. Remove-TypeData
не удаляет Types.ps1xml
файлы и не удаляет из файлов определения расширенных Types.ps1xml
типов. Дополнительные сведения о файлах Types.ps1xml
см. в разделе about_Types.ps1xml.
Этот командлет впервые появился в Windows PowerShell 3.0.
Примеры
Пример 1. Удаление данных типа для указанного типа
В этом примере удаляются все данные типа System.Array из сеанса , включая данные типа, добавленные файлом Types.ps1xml
, и данные динамического типа, добавленные в сеанс с помощью командлета Update-TypeData
.
Remove-TypeData -TypeName System.Array
Пример 2. Удаление расширенного типа данных из сеанса
В этом примере показан эффект удаления данных расширенного типа из сеанса. Первый Get-TypeData
получает данные расширенного типа для типа System.DateTime . В выходных данных показано, что свойство DateTime добавлено ко всем объектам System.DateTime в PowerShell. Командлет Get-Date
возвращает объект System.DateTime . Команда использует точечное нотацию для получения значения свойства DateTime возвращаемого объекта Get-Date
System.DateTime.
Get-TypeData System.DateTime
(Get-Date).DateTime
Get-TypeData System.DateTime | Remove-TypeData
(Get-Date).DateTime
TypeName Members
-------- -------
System.DateTime {[DateTime, System.Management.Automation.Runspaces.ScriptPropertyData]}
Friday, January 20, 2012 9:01:00 PM
Следующий Get-TypeData
командлет для получения всех данных расширенного типа для типа System.DateTime и передает их командлету Remove-TypeData
для удаления данных расширенного типа. Последний Get-Date
командлет показывает результат удаления данных расширенного типа для типа System.DateTime . Так как свойство System.DateTime больше не существует, команда для получения его значения ничего не возвращает.
Пример 3. Удаление расширенных типов для модулей
В этом примере удаляются все данные расширенных типов для объектов модуля. При конвейере объекта в Remove-TypeData
получает Remove-TypeData
имя типа объекта и удаляет все данные типа для всех объектов этого типа.
Get-Module | Remove-TypeData
Пример 4. Удаление расширенных типов из указанных модулей
В этом примере используется параметр Path командлета Remove-TypeData
для удаления расширенных типов, определенных в Types.ps1xml
файлах, добавленных модулями PSScheduledJob и PSWorkflow . Эта команда не влияет на данные динамического типа, добавляемые с помощью командлета Update-TypeData
. Эта команда завершается успешно, только если модули импортированы в текущий сеанс.
Remove-TypeData -Path "$PSHOME\Modules\PSScheduledJob", "$PSHOME\Modules\PSWorkflow\PSWorkflow.types.ps1xml"
Дополнительные сведения о модулях см. в разделе about_Modules.
Пример 5. Удаление расширенных типов из удаленного сеанса
В этом примере из удаленного сеанса удаляются расширенные типы. Команда использует Invoke-Command
командлет для удаления данных расширенных типов для всех типов CIM в сеансах в переменной $S
.
Invoke-Command -Session $S {Get-TypeData -TypeName *CIM* | Remove-TypeData}
Параметры
-Confirm
Запрос подтверждения перед выполнением командлета.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Указывает массив файлов, которые этот командлет удаляет из данных расширенного типа сеанса. Это обязательный параметр.
Введите пути и имена файлов для одного или нескольких Types.ps1xml
файлов. Подстановочные знаки не поддерживаются. Если путь не указан, расположением по умолчанию является текущий каталог.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TypeData
Указывает данные типа, которые этот командлет удаляет из сеанса. Это обязательный параметр. Введите переменную, содержащую объекты TypeData (System.Management.Automation.Runspaces.TypeData), или команду, которая получает объекты TypeData , например Get-TypeData
команду. Вы также можете передать объекты TypeData в Remove-TypeData
.
Type: | TypeData |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-TypeName
Указывает типы, для которые этот командлет удаляет все данные расширенных типов. Для типов в пространстве имен System вводятся краткие имена. В остальных случаях требуется полное имя типа. Подстановочные знаки не поддерживаются.
Имена типов можно передать в Remove-TypeData
. При конвейере объекта в Remove-TypeData
получает Remove-TypeData
имя типа объекта и удаляет все данные типа для типа объекта.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Показывает, что произойдет при запуске командлета. Командлет не выполняется.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Входные данные
Объект TypeData , например возвращаемый командлетом Get-TypeData
, можно передать по конвейеру в Remove-TypeData
.
Имена типов можно передать по конвейеру в Remove-TypeData
. При конвейере объекта в Remove-TypeData
получает Remove-TypeData
имя типа объекта и удаляет все данные типа для типа объекта.
Выходные данные
None
Этот командлет не формирует никаких выходных данных.
Примечания
Remove-TypeData
может удалять только данные расширенного типа в текущем сеансе. Он не может удалять данные расширенных типов, которые находятся на компьютере, но не добавлены в текущий сеанс, например расширенные типы, определенные в модулях, которые не импортированы в текущий сеанс.