Я пытаюсь написать запрос GPO WMI, который будет включать компьютеры с определенными именами, но при этом исключать некоторые машины, подпадающие под эти параметры. Вот что у меня есть (и не работает):
SELECT * FROM Win32_ComputerSystem WHERE Name LIKE '%MSD%' OR Name LIKE '%MSL%' AND NOT Name LIKE "%MSDSY%"
Этот вариант не сработал. Я также попытался разделить его на два разных запроса, как показано ниже:
SELECT * FROM Win32_ComputerSystem WHERE Name LIKE '%MSD%' OR Name LIKE '%MSL%'
А потом:
SELECT * from Win32_ComputerSystem WHERE NOT Name LIKE "%MSDSY01% OR %MSDSY02% OR %MSDSY05%"
Это тоже не сработало. Кто-нибудь может сказать мне, что я сделал не так? Спасибо.
Я не проверял скобку из предыдущего ответа, если она работает, это должно решить ее.
На мой взгляд, вы слишком усложняете, это можно упростить. Во-первых, если имена ваших серверов всегда начинаются с MS, опустите начальный знак процента. Затем представьте, что это соответствует всему, что вы хотите, а затем исключите те, которые вам не нужны.
Вы хотите, чтобы все серверы, начинающиеся с MS
SELECT * FROM Win32_ComputerSystem WHERE Name LIKE 'MS%'
Вам не нужны серверы, которые начинаются с MSDS (или MSDSY, но в вашем примере вы можете остановиться на втором S)
SELECT * FROM Win32_ComputerSystem WHERE not Name LIKE 'MSDS%'
Теперь объедините их
SELECT * FROM Win32_ComputerSystem WHERE Name LIKE 'MS%' AND NOT Name LIKE 'MSDS%'
Это получит все серверы, которые начинаются с MS, кроме тех, которые начинаются с MSDS.
Я также рекомендую вам использовать Утилита WBEMTEST, это может помочь вам точно настроить эти запросы (и / или убедиться, что ваш ответ точен при обмене стеками!)
Я не создавал WMI-запросы в GPMC более года, но думаю, ваш второй запрос будет работать, если вы просто добавите несколько скобок:
ВЫБЕРИТЕ * ИЗ Win32_ComputerSystem WHERE (Имя КАК '% MSD%' ИЛИ Имя КАК '% MSL%')
Содержимое в круглых скобках должно возвращать истину только для этих двух совпадений с подстановочными знаками. Если имя компьютера другое, запрос вернет false, и объект групповой политики к нему применяться не будет.