В вашем примере Path
указывает на исполняемый файл на диске, поэтому, хотя его можно использовать (если он согласован), он не будет совпадать с именем, которое вы найдете на вкладке процессов диспетчера задач.Как правило, люди будут использовать имя, как показано на вкладке Сведения в диспетчере задач.Например, с Outlook в моей системе, эти три возможности:
Path: C:\Program Files\Microsoft Office\Office16\OUTLOOK.EXE
Processes tab: Microsoft Outlook
Details tab: outlook.exe
Итак, вам нужна команда, подобная этой:
Get-Process | Where Name -eq 'Outlook' | Stop-Process
или, лучше:
Get-Process -Name 'Outlook' | Stop-Process
Обратите внимание, что PowerShell ожидает, что вы удалите «.exe», который вы видите в диспетчере задач.
РЕДАКТИРОВАТЬ: дополнительная техника
Если вы знаете именапроцессы, то вы можете упростить ваш сценарий, выполнив что-то вроде этого:
$processList = "Process1","Process2","Process3" # Add all process names to the list
$processList |
ForEach-Object {
Get-Process -Name $_ | Stop-Process
}