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


Remove-WmiObject

Удаляет экземпляр существующего класса инструментария управления Windows (WMI).

Синтаксис

Remove-WmiObject
      [-Class] <String>
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      -InputObject <ManagementObject>
      [-AsJob]
      [-ThrottleLimit <Int32>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      -Path <String>
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-WmiObject
      [-AsJob]
      [-Impersonation <ImpersonationLevel>]
      [-Authentication <AuthenticationLevel>]
      [-Locale <String>]
      [-EnableAllPrivileges]
      [-Authority <String>]
      [-Credential <PSCredential>]
      [-ThrottleLimit <Int32>]
      [-ComputerName <String[]>]
      [-Namespace <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Описание

Командлет Remove-WmiObject удаляет экземпляр существующего класса инструментария управления Windows (WMI).

Примеры

Пример 1. Закрытие всех экземпляров процесса Win32

notepad
$np = Get-WmiObject -Query "select * from win32_process where name='notepad.exe'"
$np | Remove-WmiObject

Этот пример закрывает все экземпляры Notepad.exe.

Первая команда запускает экземпляр Блокнота.

Вторая команда использует командлет Get-WmiObject для получения экземпляров Win32_Process, соответствующих Notepad.exe, а затем сохраняет их в переменной $np .

Третья команда передает объект в переменную Remove-WmiObject$np, в которую удаляются все экземпляры Notepad.exe.

Пример 2. Удаление папки

Эта команда удаляет папку C:\Test.

$a = Get-WMIObject -Query "Select * From Win32_Directory Where Name ='C:\\Test'"
$a | Remove-WMIObject

Первая команда используется Get-WMIObject для запроса к C:\Test папке, а затем сохраняет объект в переменной $a .

Вторая команда передает $a переменную Remove-WMIObject, в которую удаляется папка.

Параметры

-AsJob

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

В Windows PowerShell 3.0 появились новые командлеты CIM, которые выполняют те же задачи, что и командлеты WMI. Командлеты CIM соответствуют стандартам WS-Management (WSMan) и стандарту Common Information Model (CIM), что позволяет командлетам использовать те же методы для управления компьютерами, работающими под управлением операционной системы Windows и работающих с другими операционными системами. Вместо использования рекомендуется использовать Remove-WmiObjectкомандлет Remove-CimInstance.

При использовании параметра AsJob команда возвращает объект, представляющий фоновое задание, а затем отображает командную строку. Можно продолжить работу в рамках данного сеанса, пока задание завершается. Если Remove-WmiObject используется для удаленного компьютера, задание создается на локальном компьютере, а результаты с удаленных компьютеров автоматически возвращаются на локальный компьютер. Чтобы управлять заданием, используйте командлеты, содержащие существительное задание (командлеты задания). Чтобы получить результаты задания, используйте Receive-Job командлет.

Чтобы использовать этот параметр для удаленных компьютеров, локальные и удаленные компьютеры должны быть настроены для удаленного взаимодействия. Запустите Windows PowerShell с помощью параметра "Запуск от имени администратора". Дополнительные сведения см. в about_Remote_Requirements.

Дополнительные сведения о фоновых заданиях Windows PowerShell см. в about_Jobs и about_Remote_Jobs.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Authentication

Указывает уровень проверки подлинности, используемый для WMI-соединения. Допустимые значения для этого параметра:

  • -1:Неизменившийся.
  • 0: по умолчанию.
  • 1:Никакой. Проверка подлинности не выполнена.
  • 2:Соединять. Проверка подлинности выполняется только в том случае, если клиент устанавливает связь с приложением.
  • 3:Звать. Проверка подлинности выполняется только в начале каждого вызова, когда приложение получает запрос.
  • 4:Пакет. Проверка подлинности выполняется для всех данных, полученных от клиента.
  • 5: PacketIntegrity. Все данные, передаваемые между клиентом и приложением, проходят проверку подлинности и проверяются.
  • 6: PacketPrivacy. Используются свойства других уровней проверки подлинности, а все данные шифруются.
Тип:AuthenticationLevel
Допустимые значения:Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Authority

Указывает центр сертификации, используемый для проверки подлинности подключения к WMI. Можно выбрать стандартную проверку подлинности NTLM или Kerberos. Чтобы использовать NTLM, задайте для параметра центра значение ntlmdomain:<DomainName, где <DomainName>> определяет допустимое доменное имя NTLM. Чтобы использовать Kerberos, укажите kerberos:<DomainName>\<ServerName>. Параметр authority не может быть указан при подключении к локальному компьютеру.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Class

Указывает имя класса WMI, который удаляет этот командлет.

Тип:String
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ComputerName

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

Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескольких компьютеров. Чтобы указать локальный компьютер, введите имя компьютера, точку (.) или localhost.

Этот параметр не зависит от удаленного взаимодействия Windows PowerShell. Параметр ComputerName можно использовать, даже если компьютер не настроен для выполнения удаленных команд.

Тип:String[]
Aliases:Cn
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Тип:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Credential

Указывает учетную запись пользователя с разрешением на выполнение этого действия. По умолчанию используется текущий пользователь.

Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential , например объект, созданный командлетом Get-Credential . При вводе имени пользователя этот командлет запрашивает пароль.

Тип:PSCredential
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-EnableAllPrivileges

Указывает, что этот командлет включает все разрешения текущего пользователя перед командой, которая выполняет вызов WMI.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Impersonation

Задает используемый уровень олицетворения. Допустимые значения для этого параметра:

  • 0: по умолчанию. Считывает локальный реестр для уровня олицетворения по умолчанию, который обычно имеет значение 3: олицетворение.
  • 1:Анонимный. Скрывает учетные данные вызывающей стороны.
  • 2:Отождествлять. позволяет объектам запрашивать учетные данные вызывающей стороны.
  • 3:Олицетворять. позволяет объектам использовать учетные данные вызывающей стороны.
  • 4:Делегат. Позволяет объектам разрешать другим объектам использовать учетные данные вызывающей стороны.
Тип:ImpersonationLevel
Допустимые значения:Default, Anonymous, Identify, Impersonate, Delegate
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-InputObject

Указывает объект ManagementObject, используемый в качестве входных данных. Если параметр используется, все остальные параметры пропускаются.

Тип:ManagementObject
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Locale

Указывает предпочтительный язык для объектов WMI. Параметр языкового стандарта указывается в виде массива в формате MS_<LCID> в предпочтительном порядке.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Namespace

Указывает пространство имен репозитория WMI, в котором расположен класс WMI, на который ссылается класс WMI, когда он используется с параметром класса .

Тип:String
Aliases:NS
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Path

Указывает путь объекта WMI класса WMI или указывает путь объекта WMI удаляемого экземпляра класса WMI.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ThrottleLimit

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

Тип:Int32
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

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

ManagementObject

Объект управления можно передать в этот командлет.

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

None, System.Management.Automation.RemotingJob

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

Примечания

Windows PowerShell включает следующие псевдонимы для Remove-WmiObject:

  • rwmi