Remove-WmiObject
Удаляет экземпляр существующего класса инструментария управления Windows (WMI).
Синтаксис
Remove-WmiObject [-Class] <string> [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
Remove-WmiObject [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
Remove-WmiObject -InputObject <ManagementObject> [-AsJob] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
Remove-WmiObject -Path <string> [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Пространство имен <string>] [-AsJob] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
Remove-WmiObject [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
Remove-WmiObject [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-ThrottleLimit <int>] [-Confirm] [-WhatIf] [<CommonParameters>]
Описание
Командлет Remove-WmiObject удаляет экземпляр существующего класса WMI.
Параметры
-AsJob
Запускает команду в качестве фонового задания. Этот параметр служит для запуска команд, выполнение которых занимает длительное время.
Запускает команду в качестве фонового задания. Этот параметр служит для запуска команд, выполнение которых занимает длительное время.
При использовании параметра AsJob команда возвращает объект, представляющий фоновое задание, а затем отображает командную строку. Пока задание выполняется можно продолжать работу в сеансе. Если командлет Remove-WmiObject используется для работы с удаленным компьютером, задание создается на локальном компьютере, и результаты с удаленных компьютеров автоматически возвращаются на локальный компьютер. Для управления заданием используйте командлеты, в именах которых содержится существительное Job (командлеты Job). Чтобы получить результаты задания, используйте командлет Receive-Job.
Примечание. Чтобы использовать этот параметр для удаленных компьютеров, для локального и удаленного компьютеров должно быть настроено удаленное взаимодействие. Кроме того, при работе с компьютером под управлением Windows Vista и более поздних версий Windows необходимо запускать Windows PowerShell командой "Запуск от имени администратора". Дополнительные сведения см. в разделе about_Remote_Requirements.
Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в разделах about_Jobs и about_Remote_Jobs.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Authentication <AuthenticationLevel>
Задает уровень проверки подлинности, используемый для WMI-соединения. Допустимые значения:
-1: Unchanged
0: Default
1: None (проверка подлинности не используется).
2: Connect (проверка подлинности выполняется только при установке клиентом подключения к приложению).
3: Call (проверка подлинности выполняется только в начале каждого вызова при получении запроса приложением).
4: Packet (проверка подлинности выполняется при обработке всех данных, полученных от клиента).
5: PacketIntegrity (для всех данных, передаваемых между клиентом и приложением, проводится проверка подлинности и проверка целостности).
6: PacketPrivacy (используются свойства других уровней проверки подлинности, все данные шифруются).
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Authority <string>
Задает центр, который используется для проверки подлинности WMI-соединения. Можно указать стандартную проверку подлинности NTLM или Kerberos. Чтобы использовать NTLM, задайте для параметра Authority значение "ntlmdomain:<имя_домена>", где <имя_домена> — допустимое имя домена NTLM. Чтобы использовать Kerberos, укажите "kerberos:<имя_домена>\<имя_сервера>". При подключении к локальному компьютеру нельзя использовать параметр Authority.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Class <string>
Задает имя удаляемого класса WMI.
Обязательно? |
true |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-ComputerName <string[]>
Задает компьютер, к которому требуется применить операцию управления. Значение может быть полным доменным именем, именем NetBIOS или IP-адресом. Используйте имя локального компьютера, "localhost" или точку (.) чтобы указать "Локальный компьютер". Локальный компьютер используется по умолчанию. Если пользователь и удаленный компьютер находятся в разных доменах, необходимо использовать полное доменное имя. Можно передать значение этому параметру по конвейеру.
Этот параметр не использует функцию удаленного взаимодействия Windows PowerShell, которая использует протокол WS-Management. Параметр ComputerName командлета Get-WmiObject можно использовать, даже если компьютер не настроен на выполнение удаленных команд по протоколу WS-Management.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Credential <PSCredential>
Задает учетную запись пользователя, который располагает разрешением для выполнения этого действия. По умолчанию используется значение "Текущий пользователь". Введите имя пользователя, например "User01", "Domain01\User01" или "User@Contoso.com". Или укажите объект PSCredential, например объект, возвращенный командлетом Get-Credential. При вводе имени пользователя появится приглашение ввести пароль.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-EnableAllPrivileges
Включает все привилегии текущего пользователя перед вызовом WMI из команды.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Impersonation <ImpersonationLevel>
Задает используемый уровень олицетворения. Допустимые значения:
0: Default (считывает значение уровня представления по умолчанию из локального реестра, обычно это значение равняется "3: Impersonate").
1: Anonymous (скрывает учетные данные вызывающего).
2: Identify (позволяет объектам запрашивать учетные данные вызывающего).
3: Impersonate (позволяет объектам использовать учетные данные вызывающего).
4: Delegate (позволяет объектам разрешать другим объектам использовать учетные данные вызывающего).
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-InputObject <ManagementObject>
Задает объект ManagementObject, используемый в качестве входных данных. При использовании этого параметра все остальные параметры игнорируются.
Обязательно? |
true |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByValue) |
Принимать подстановочные знаки? |
false |
-Locale <string>
Задает предпочтительную локаль для объектов WMI. Значение параметра Locale задается как массив в формате MS_<LCID> в желаемом порядке.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Namespace <string>
При использовании с параметром Class данный параметр задает пространство имен хранилища WMI, в котором находится указанный класс WMI.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Path <string>
Задает путь к классу WMI или экземпляру класса WMI, который требуется удалить.
Обязательно? |
true |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-ThrottleLimit <int>
Дает возможность пользователю указать пороговое значение количества операций WMI, которые могут выполняться одновременно. Этот параметр используется вместе с параметром AsJob. Ограничение скорости относится только к текущей команде, но не к сеансу или компьютеру.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Confirm
Запрашивает подтверждение перед выполнением команды.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-WhatIf
Описывает, что произойдет при выполнении команды, без ее фактического выполнения.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
System.Management.ManagementObject Объект управления можно передать командлету Remove-WmiObject по конвейеру. |
Выходные данные |
None или System.Management.Automation.RemotingJob Если задан параметр AsJob, этот командлет возвращает объект задания. В противном случае командлет не формирует никаких выходных данных. |
Пример 1
C:\PS>notepad
C:\PS> $np = get-wmiobject -query "select * from win32_process where name='notepad.exe'"
C:\PS> $np | remove-wmiobject
Описание
-----------
Эта команда закрывает все экземпляры программы Notepad.exe.
Первая команда запускает экземпляр Блокнота (Notepad).
Во второй команде используется командлет Get-WmiObject для извлечения экземпляров Win32_Process, соответствующих программе Notepad.exe, затем они сохраняются в переменной $np.
Третья команда передает объект в переменной $np командлету Remove-WmiObject, который удаляет все экземпляры программы Notepad.exe.
Пример 2
C:\PS>$a = Get-WMIObject -query "Select * From Win32_Directory Where Name ='C:\\Test'"
C:\PS> $a | Remove-WMIObject
Описание
-----------
Эта команда удаляет каталог C:\Test.
Первая команда с помощью командлета Get-WMIObject запрашивает каталог C:\Test и сохраняет его в переменной $a.
Вторая команда передает по конвейеру переменную $a командлету Remove-WMIObject, который удаляет каталог.
См. также
Концепции
Get-WmiObject
Invoke-WmiMethod
Set-WmiInstance
Get-WSManInstance
Invoke-WSManAction
New-WSManInstance
Remove-WSManInstance