Всеки знае как да убие програма с помощта на Task Manager в Windows или Force Quit в OS X, но понякога е полезно да убиете програма с помощта на командния ред. Сблъсквал съм се с няколко ситуации, при които програмата отказа да приключи чрез диспечера на задачите, дори когато се опитах да убия основния процес. Force Quit има свои собствени странности и не винаги убива програма, както трябва. Тогава можете да използвате силата на командния ред.
В тази статия ще разгледам командите за спиране на програма в Windows, OS X и Linux. Интересното е, че обикновено има повече от една команда за постигане на това, така че ще се опитам да спомена различните, които съм използвал. Това не е изчерпателен списък, така че ако използвате друга команда, която не е спомената тук, моля, уведомете ни в коментарите.
Windows – TSKILL и TASKKILL
В Windows можете да използвате две команди, за да убиете програма: TSKILL и TASKKILL. TSKILL е по-проста и по-малко мощна команда, но върши добре работата. Например, ако използвате Microsoft Word, името на процеса е winword.exe. За да убиете Word от командния ред, просто въведете следната команда:
skill winword
Това ще убие Word и ще загубите всички незапазени данни, така че трябва да внимавате да го използвате. Изпробвах го на незаписан документ на Word и той просто изчезна, когато стартирах това, без подкани за запазване на документите. Това е до голяма степен вярно за всички команди, които ще спомена тук, тъй като това е целта. Можете да убиете програма незабавно, без никакви въпроси.

Едно нещо, което трябва да се отбележи е, че през повечето време, когато се използва тази команда, тя се използва с параметъра /A. /A казва на командата да прекрати процеса, изпълняван във всички сесии. Така че обикновено трябва да въведете следната команда, за да сте сигурни, че процесът е убит:
skill /A winword
Втората команда, която има повече опции и е по-мощна, е TASKKILL. Ако погледнете страницата за помощ за TASKKILL, ще видите какво имам предвид:

Ако искате да имате повече контрол и опции за убиване на програма в Windows, използвайте TASKKILL. Като за начало можете да убиете програма, като използвате следната команда:
taskkill /F /IM winword.exe
Имайте предвид, че трябва да използвате .EXE, когато използвате командата TASKKILL. /F означава принудително прекратяване на процеса. /IM означава името на изображението, т.е. името на процеса. Ако искате да убиете чрез ID на процеса (PID), трябва да използвате /PID вместо /IM. /T е страхотен, защото ще убие всички дъщерни процеси, стартирани от посочения процес.
Можете също така да използвате TASKKILL, за да се свържете отдалечено с друга система и да убиете процес на тази отдалечена система. Това, което също ми харесва, е възможността за използване на заместващи символи в TASKKILL.
OS X/Linux – KILL и KILLALL
В OS X и Linux имате две команди за убиване на процеси: KILL и KILLALL. Трябва да ги стартирате в прозореца на терминала. За да убиете програма, трябва или да използвате името на програмата, или идентификатора на процеса. Има няколко начина, по които можете да намерите тази информация. Един от начините е чрез монитора на активността.

Това обаче изисква GUI интерфейс. Ако използвате командния ред, за да убиете процес, можете да използвате командния ред, за да намерите и информацията за процеса. Две команди, които идват на ум са top и ps -ax .

top ще ви даде списък с процеси с PID и името на програмата, също сортирани по използване на процесора. Това е бърз начин да намерите процеса, който искате да убиете. ps -ax ще ви даде списък, сортиран по PID и пътя на програмата. Малко по-различен е от горния.

Сега за убиване на програмата в OS X. Можете просто да въведете следната команда, за да убиете конкретен процес:
убийте -9 83002
83002 е терминалният процес, а 9 означава да убиете процеса. Можете да използвате други числа като 3, което означава Изход, или 6, което означава Прекратяване. Най-често обаче ще се придържате към 9. Можете също да използвате командата KILL, за да убиете всички работещи процеси, въпреки че вероятно никога не трябва да използвате тази команда.
убивам -ТЕРМИН -1
Когато KILL е полезно за убиване на един процес или всички процеси, KILLALL се използва за убиване на група процеси. Например, ако използвате Google Chrome, може да имате 10 работещи процеса на Chrome. Би било наистина досадно да използвате KILL десет пъти, за да изключите Chrome. Вместо това можете да използвате KILLALL така:
убийте всички Evernote
или
killall "Google Chrome"
Имайте предвид, че трябва да използвате единични кавички или нещо по-дълго от една дума. Освен това, ако процесът не се изпълнява под вашето име, а вместо това се изпълнява под root, трябва да използвате следната команда:
sudo killall „Google Chrome“
или
sudo killall -9 'Google Chrome'
Отново, 9 изпраща специфичен сигнал към УБИЙСТВО, а не ТЕРМ. Sudo е необходим само ако получите грешка, че нямате разрешение. В противен случай можете да направите програма killall или програма killall -9 . В OS X командата KILLALL е много полезна, когато не можете да напуснете програма. Не е нужно да знаете идентификатора на процеса, което е хубаво. Просто въведете името и всички процеси, свързани с това име, ще бъдат убити.
Тази статия имаше за цел да ви даде по-усъвършенствани методи за убиване на програма в Windows, OS X и Linux. Ако имате някакви въпроси относно спирането на програма чрез командния ред, публикувайте коментар и аз ще се опитам да помогна. Наслади се!