Существует несколько подходов к удаленному уничтожению процессов из CLI:
Powershell
Предполагая, что у вас есть учетная запись с необходимыми разрешениями, и вы настроили Powershell для удаленного использования (не рассматривается в этом ответе, но есть бесплатная электронная книга от Дона Джонса, в которой рассказывается, как настроить), вы можете использовать один из нескольких командлетов для удаленно убивать процессы.
Остановить процесс через Invoke-Command
Вы должны быть в состоянии использовать Stop-Process
вместе с Invoke-Command
(или открывая более постоянный удаленный сеанс).
Invoke-Command -ComputerName RemoteComputer -ScriptBlock {Stop-Process processname}
Это было бы моим предпочтением, но требует некоторой конфигурации заранее, поэтому не идеально в каждой ситуации.
Встроенные решения
Taskkill.exe
Taskkill предоставляется на последних машинах Windows, и может использоваться удаленно с параметром /s
.
Пример:
taskkill /s remotecomputer /pid processID
Sysinternals Инструменты
Вы также можете использовать PSKill или PSExec (доступно на live.sysinternals.com) для завершения процессов.
PSKill
Похож на Taskkill, но не предоставляется на машинах с Windows по умолчанию.
Пример:
pskill \\remotecomputer <process ID | name>
Psexec
С другой стороны, используя PSExec, вы можете запустить любую команду, которую обычно используете для локального управления процессами.
Пример:
psexec \\remotecomputer taskkill /pid processID