Стандартный запрос
SELECT * FROM Win32_OperatingSystem WHERE ….
Версию операционки определяем так:
Version LIKE «5.1%» — Windows XP и Windows 2003 Server
Version LIKE «5.2%» — Windows 2003R2 Server
Version LIKE «6.0%» — Windows Vista и Windows 2008 Server
Version LIKE «6.1%» — Windows 7 и Windows 2008R2 Server
Разрядность можно определить по OSArchitecture:
OSArchitecture = «32-bit» — 32-х битная система
OSArchitecture = «64-bit» — 64-х битная система (но на Windwos XP и 2003R2 не прокатит, нет этого свойства).
Может потребоваться ProductType:
ProductType = 1 — это клиентская ОС (XP, Vista, Win7)
ProductType > 1 — это серверные ОС (2003R2, 2008, 2008R2);
значение 2 = контроллер домена, значение 3 — обычный сервер
Пример
select * from Win32_OperatingSystem WHERE Version='6.1.7601' AND OSArchitecture='64-bit'
ПримерЫ WMI фильтров
только Windows 7 x64:
select * from Win32_OperatingSystem WHERE Version like «6.1%» AND ProductType=»1″ AND OSArchitecture = «64-bit»
только Windows 7 x32:
только x32:
только х64:
на все с ОЗУ больше или равно 1Гб:
или установлен IE 8 и выше:
Чтобы отфильтровать все компьютеры с Windows 8, WMI запрос будет таким:
SELECT * FROM Win32_OperatingSystem WHERE Version LIKE "6.2%" AND ProductType = "1"
Если нужны все сервера с Windows Server 2012, запрос будет таким:
SELECT * FROM Win32_OperatingSystem WHERE Version LIKE "6.2%" AND ( ProductType = "2" OR ProductType = "3" )
- Выбирает все серверные ОС.
Select * from Win32OperatingSystem where Caption like »%Server%»
- .
SELECT OperatingSystemSKU FROM Win32_OperatingSystem WHERE OperatingSystemSKU = 12 OR OperatingSystemSKU = 39 OR OperatingSystemSKU= 14 OR OperatingSystemSKU = 41 OR OperatingSystemSKU = 13 OR OperatingSystemSKU = 40 OR OperatingSystemSKU = 29
- Выбирает все ПК, на которых текущая дата понедельник
Select DayOfWeek from Win32_LocalTime where DayOfWeek = 1
- Выбирает ПО с идентификационным номером 5E076CF2-EFED-43A2-A623—13E0D62EC7E0
SELECT * FROM Win32Product WHERE IdentifyingNumber = "{5E076CF2-EFED-43A2-A623—13E0D62EC7E0}»
- Выбирает всех клиентов с именем сайта Amsterdam
SELECT * FROM Win32_NTDomain WHERE ClientSiteName = «Amsterdam»
- Часовой пояс компьютера имеет значение «Восточное время»
Select * from win32_timezone where bias = -300
- ПК с 64-х битной архитектурой
Select * FROM Win32_OperatingSystem WHERE OSArchitecture=”64-bit”
- ПК с включенным поддержкой Multicasting
Select * from Win32_NetworkProtocol where SupportsMulticasting = true
- ПК с часовым поясом запада США
Select * from win32_timezone where bias =-300
- Отбирает компьютеры с любым одним из установленных пакетов «MSIPackage1» или «MSIPackage2»
Select * from Win32_Product where name = "MSIPackage1" OR name = "MSIPackage2"
- Отбирает компьютеры со свободным пространством на дисках не менее 600 мегабайт
Select * from Win32_LogicalDisk where FreeSpace > 629145600 AND Description <> "Network Connection"
- Отбирает ПК Toshiba Tecra моделей 800 и 810.
Select * from Win32_ComputerSystem where manufacturer = "Toshiba" and Model = "Tecra 800" OR Model = "Tecra 810"
- Компьютеры, со свободным пространством на диске C более 1Гб
select * from Win32_LogicalDisk where FreeSpace>1073741824 and Caption = 'c:'"
- Отбирает отключенные и незапущенные службы
select * from Win32_Service where State = 'Stopped' And StartMode <> 'Disabled'
- Отбирает диски без файловой системы
SELECT * FROM Win32_LogicalDisk WHERE FileSystem IS NULL
- Диски с файловой системой
SELECT * FROM Win32_LogicalDisk WHERE FileSystem IS NOT NULL
- Диски с файловой системой NTFS
SELECT * FROM Win32_LogicalDisk WHERE FileSystem = "NTFS"
- Диски с одним разделом или более чем 100 секторов на дорожку
SELECT * FROM Win32_DiskDrive WHERE Partitions < 2 OR SectorsPerTrack > 100
- Диски C или D со свободным пространством более 2000000 байт и файловой системой NTFS
SELECT * FROM Win32_LogicalDisk WHERE (Name = "C:" OR Name = "D:") AND FreeSpace > 2000000 AND FileSystem = "NTFS"
- Все события из журнала «Приложения»
SELECT * FROM Win32_NTLogEvent WHERE Logfile = 'Application'
- События из журнала «Приложения» отфильтрованные по источнику и времени
SELECT * FROM Win32_NTLogEvent WHERE LogFile = 'Application' AND (SourceName='SQLISService' OR SourceName='SQLISPackage') AND TimeGenerated > '20050117'
- .
SELECT * FROM Meta_Class WHERE __Class LIKE %Win32%
- .
SELECT * FROM __InstanceCreationEvent WHERE TargetInstance ISA "Win32_NTLogEvent" GROUP WITHIN 600 BY TargetInstance.SourceName HAVING NumberOfEvents > 25
- Сведения о логическом диске
SELECT FreeSpace, DeviceId, Size, SystemName, Description FROM Win32_LlogicalDisk
- Список исправлений QFE, произведенных в текущей операционной системе
Select * FROM Win32_QuickFixEngineering
- Список групп безопасности
select * from Win32_Group
- Отбирает заданный компьютер по имени
select * from win32_computerSystem where name='<имя_пк>' (OR name='<имя_пк>')
- Отбирает компьютеры по вхождению заданного выражение в название компьютера
select * from win32_computerSystem where name like "%<вхождение>%"
- Компьютеры с установленным Office любой версии
SELECT * FROM Win32_Product WHERE Name LIKE "Microsoft Office%"