Можно ли убить процесс, основанный на его среде, из командной строки?
Сценарий: предположим, у меня есть скрипт, который порождает несколько процессов. Могут быть случаи, когда скрипт должен быть прерван. В большинстве случаев это хорошо. Однако иногда один или два из порождаемых процессов остаются запущенными и остаются потерянными, поскольку скрипт был убит.
Есть ли способ найти процессы, основанные на их среде (конкретные строки среды и значения, установленные при запуске / порождении сценария), и уничтожить их?
ОС: Windows 7
1 ответ
Powershell был бы хорошим подходом к решению этой проблемы. Вы можете искать текущие запущенные процессы и фильтровать их по ряду полей. Храня процессы, которые вы хотите уничтожить в переменной, вы можете убить их всех одним махом
Вот запись TechNet, объясняющая, как получить процессы в powershell: https://technet.microsoft.com/en-us/library/ee176855.aspx
Как видно на рисунке, вы можете направить оператор where для фильтрации необходимой информации.