Командлет 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.
Третья команда передает объект в переменную $np в Remove-WmiObject, которая удаляет все экземпляры 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
Указывает, что этот командлет выполняется в качестве фонового задания. Используйте этот параметр для выполнения команд, которые занимают много времени.
Новые командлеты CIM, представленные в Windows PowerShell 3.0, выполняют те же задачи, что и командлеты 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.
Указывает центр, используемый для проверки подлинности подключения WMI. Можно указать стандартную проверку подлинности NTLM или Kerberos. Чтобы использовать NTLM, задайте для параметра центра значение ntlmdomain:<DomainName>, где <имя домена> определяет допустимое доменное имя NTLM. Чтобы использовать Kerberos, укажите kerberos:<DomainName>\<ServerName>. Параметр центра нельзя включить при подключении к локальному компьютеру.
Указывает имя компьютера, на котором выполняется этот командлет. По умолчанию используется локальный компьютер.
Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескольких компьютеров. Чтобы указать локальный компьютер, введите имя компьютера, точку (.) или localhost.
Этот параметр не зависит от удаленного взаимодействия Windows PowerShell. Вы можете использовать параметр ComputerName, даже если компьютер не настроен для выполнения удаленных команд.
Указывает учетную запись пользователя, которая имеет разрешение на выполнение этого действия. По умолчанию используется текущий пользователь.
Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, например объект, созданный командлетом Get-Credential. При вводе имени пользователя этот командлет запрашивает пароль.
Задает предпочтительный языковой стандарт для объектов WMI. Параметр языкового стандарта указан как массив в формате LCID< MS_>LCID в предпочтительном порядке.
Указывает максимальное количество одновременных подключений, которые можно установить для выполнения этой команды.
Этот параметр используется вместе с параметром AsJob. Ограничение регулирования применяется только к текущей команде, а не к сеансу или к компьютеру.
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.