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


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