Как да използвате taskkill и SC за прекратяване на процеси и услуги в Windows

  • Taskkill и SC ви позволяват да затваряте блокирани процеси и услуги с помощта на команди.
  • Използването на филтри и разширени опции улеснява ефективното управление на задачите.
  • Можете да автоматизирате спирането на процеси със скриптове и пакетни файлове.
  • PowerShell и инструменти като Process Explorer добавят още повече контрол и гъвкавост

Taskkill

Работата с процеси и услуги в Windows понякога е критична задача за потребителите и системните администратори. Вероятно сте се сблъсквали със замръзнало приложение, неотговаряща услуга или необходимостта от автоматично затваряне на програми. Ако някога сте се опитвали да спрете принудително приложение или услуга от диспечера на задачите и сте били неуспешни, може би пропускате потенциала на команди като Taskkill y SC.

В тази статия ще разгледаме подробно как работят те Taskkill, SC и цялото семейство от свързани команди, за да можете да извлечете максимума от тях в ежедневието си.

За какво се използват taskkill, SC и други команди за процеси в Windows?

Windows има различни помощни програми за управление на процеси и услуги. taskkill е командата par excellence за прекратяване на един или повече процеси, или чрез идентифицирането им чрез техния PID (Идентификатор на процес), или чрез името на образа им. От друга страна, командата SC Позволява ви да манипулирате системни услуги, като например стартиране, спиране, заявки или конфигуриране на работещи услуги. Използването на тези команди от конзолата (CMD или PowerShell), пакетни файлове или скриптове осигурява подробен контрол и най-вече възможност за автоматизиране на сложни задачи.

Tasklist, от друга страна, е командата за преглед на всички активни процеси, като се получава PID и име на всеки един от тях. Тя е особено полезна за локализиране на проблемни процеси, преди да бъдат прекратени.

Cmd

Как да се изброят активните процеси: чрез TASKLIST

Преди да прекратите даден процес, е добре да знаете точно какво се изпълнява и какви са неговите идентификатори. Тук е мястото, където процесът влиза в действие. TasklistТази команда предлага изглед, много подобен на раздела „Процеси“ в диспечера на задачите, но с по-големи детайли, ако добавите параметри.
Някои от най-полезните приложения:

  • Показване на всички процеси в табличен формат: tasklist
  • Повече информация за всяка задача: tasklist /V
  • Изброяване само на хоствани услуги: tasklist /SVC
  • Филтриране на процеси по статус: tasklist /V /FI "STATUS eq running"
  • Вижте всички процеси, които използват конкретен модул: tasklist /M ntdll.dll
  • Експортирайте списъка в CSV или TXT файл на работния плот:
    tasklist /V /FO CSV >%userprofile%\Desktop\list.csv

съвет: Можете да проверите всички опции на списъка със задачи, като изпълните tasklist /? или дори експортирайте помощта във файл, използвайки tasklist /? >%userprofile%\Desktop\uso.txt.

CMD и PowerShell: Основни команди за всеки потребител на Windows
Свързана статия:
CMD и PowerShell: Пълно ръководство за основни команди в Windows

Как работи TASKKILL: прекратяване на процеси от командния ред

Taskkill Това е инструментът за „принудително“ затваряне на процеси, когато дори диспечера на задачите не реагира. Той ви позволява да изберете процесите, които да затворите, по техния начин. PID или за неговия име на изображението (например, notepad.exe). Той ви позволява също така да принудите да затворите и дори да прекратите дъщерни процеси, които може да са били стартирани от главния процес.

Синтаксис на Taskkill

Доста е гъвкав и приема множество параметри на един ред. Общият формат е:

taskkill <usuario> ]]] {  }  
  • /с : Изпълнява командата на отдалечен компютър (по IP адрес или име, без обратни наклонени черти). Ако е пропуснато, това се изпълнява на локалния компютър.
  • /или : Посочете потребителя и домейна за удостоверяване, ако е необходимо.
  • /стр. : Паролата на посочения потребител.
  • /фи : Позволява ви да избирате задачи въз основа на разширени критерии (PID, състояние, потребление, потребител и др.).
  • /пид : Показва идентификатора на процеса.
  • /име : Име на образа на процеса (можете да използвате заместващ символ) * за всички).
  • /F: Принуждава прекратяването на процеса.
  • /т: Той също така прекратява всички дъщерни процеси, стартирани от родителския процес.

Валидни опции и филтри в TASKKILL

Филтрира Валидни оператори Валидни стойности
СТАТУТ екв., не БЯГАЩ, НЕ РЕАГИРАЩ, НЕИЗВЕСТЕН
ИЗОБРАЖИ МЕ екв., не Име на изображението
PID еквивалент, не, гт, лт, ге, ле Числов идентификатор
СЕСИЯ еквивалент, не, гт, лт, ге, ле Номер на сесия
процесорно време еквивалент, не, гт, лт, ге, ле HH: MM: SS
МЕМОСАЖ еквивалент, не, гт, лт, ге, ле Памет в KB
USERNAME екв., не потребител или домейн\потребител
УСЛУГИ екв., не Име на услугата
ЗАГЛАВИЕ НА ПРОЗОРЦА екв., не Заглавие на прозореца
МОДУЛИ екв., не Име на DLL

ВАЖНИ БЕЛЕЖКИ:

  • Филтрите ЗАГЛАВИЕ НА ПРОЗОРЦА y СТАТУТ Те не са съвместими когато е посочена отдалечена система.
  • Използвайте заместващи символи (*) В /аз съм Валидно е само когато е приложен филтър.
  • При дистанционно затваряне на процеси, прекратяването винаги ще бъде принудително дори ако /f не се използва.

Практически примери за използване на taskkill

  • Затваряне на множество процеси по PID: taskkill /pid 1230 /pid 1241 /pid 1253
  • Принудително затваряне на иницииран от системата Notepad: taskkill /f /fi "USERNAME eq NT AUTHORITY\SYSTEM" /im notepad.exe
  • Затворете всички процеси на отдалечен компютър, чийто образ започва с note, като удостоверите самоличността си с потребител: taskkill /s servidor1 /u midominio\usuario /p miClave /fi "IMAGENAME eq note*" /im *
  • Прекратяване на определен процес и всички негови деца, само ако е стартиран от администратора: taskkill /pid 2134 /t /fi "username eq administrator"
  • Прекратете всички процеси с PID по-голям или равен на 1000: taskkill /f /fi "PID ge 1000" /im *
  • Затвори по име: taskkill /f /im notepad.exe
  • Затворете CMD и дъщерните процеси: taskkill /f /im cmd.exe /t
  • Принудително спиране на VBScript скриптове: taskkill /f /im wscript.exe
  • Рестартирайте Windows Explorer: taskkill /f /im explorer.exe & start explorer.exe
  • Рестартирайте Explorer след 5 секунди: taskkill /f /im explorer.exe & timeout /nobreak 05 & start explorer.exe
  • Затворете всички неотговарящи задачи: taskkill.exe /f /fi "status eq Not Responding"

SC команда

Как да използвате SC queryex и taskkill за спиране на блокирани услуги

Понякога Услугите на Windows остават в състояние „спиране“ или „стартиране“ и няма начин да се управляват от конзолата за услуги.Ако рестартирането на сървъра не е възможно, има заобиколно решение:

  1. Определете точното име на услугата от конзолата за услуги (services.msc).
  2. В конзола с администраторски права изпълнете:
    sc queryex
  3. Запишете PID (Идентификатор на процес), който се появява в изхода.
  4. Изпълнете следната команда:
    taskkill /pid /f

С тази комбинация можете да спрете дори най-упоритите услуги без рестартиране.

Убиване на процеси с PowerShell: Модерната алтернатива

В Windows имаме и PowerShell, който предлага командлета Стоп-процес (и техните псевдоними убие y spps), с който можете да прекратявате процеси по име или PID. Практически примери:

  • По ПИД: Stop-Process -Force -Id 3572
  • По име: Stop-Process -Name notepad o kill -Name notepad

PowerShell добавя гъвкавост, разширено писане на скриптове и безпроблемна интеграция със сложни скриптове за администриране.

Съвети и предупреждения при използване на тези команди

  • Имайте предвид привилегиите: Ако даден процес е стартиран като администратор, ще трябва да отворите конзолата със същите разрешения.
  • Принудителното изключване може да доведе до загуба на данни: Ако задачата е имала незапазени промени, може да ги загубите.
  • При работа с отдалечени компютри, всички прекратявания са принудителни: И е изключително важно да имате подходящи разрешения, за да избегнете проблеми в производството.
  • Комбинирайте филтри със заместващи символи и многопараметрични функции, за да затворите голям брой процеси с една команда.

Този набор от инструменти и стратегии ще ви позволи да отстранявате сривове, да освобождавате ресурси, да автоматизирате изключването на приложения и да държите компютъра или мрежата си под контрол, дори в ситуации, които изглеждат невъзможни за разрешаване от графичния интерфейс на Windows.