Kaip nužudyti procesus naudojant Linux

Daugeliu atvejų norite, kad programa baigtųsi savo priemonėmis arba, jei tai yra grafinė programa, naudodami atitinkamą meniu parinktį arba naudodami kryžių kampe.

Kiekviena taip dažnai užkels programą, tokiu atveju reikės metodo, kaip jį nužudyti. Galbūt taip pat norėsite nužudyti programą, kuri veikia fone, kad jums nereikia paleisti.

Šiame vadove pateikiamas būdas, kaip nužudyti visas tos pačios programos versijas, kurios veikia jūsų sistemoje.

Kaip naudoti "killall" komandą

"Killall" komanda nužudo visus procesus pagal pavadinimą. Tai reiškia, kad jei turite tris tos pačios programos versijas, kuriose vykdoma komanda killall, visi trys bus nužudyti.

Pavyzdžiui, atidarykite mažą programą tokio vaizdo peržiūros priemonė. Dabar atidarykite kitą tos pačios vaizdo peržiūros kopiją. Mano pavyzdžiu pasirinkau "Xviewer", kuri yra " Eye Of Gnome" klonas.

Dabar atidarykite terminalą ir įveskite šią komandą:

killall

Pavyzdžiui, jei norite nužudyti visus "Xviewer" egzempliorius, įveskite:

killall xviewer

Abu programos, kurią pasirinkote nužudyti, pavyzdžiai bus uždaryti.

Nužudyk tikslų procesą

killall gali sukelti keistų rezultatų. Na, čia yra viena priežastis. Jei turite komandos pavadinimą, kuris yra ilgesnis nei 15 simbolių, tada komanda killall veikia tik pirmiesiems 15 simbolių. Jei dėl to turite dvi programas, kurios turi tuos pačius pirmus 15 simbolių, abi programos bus atšauktos, nors jūs tik norėjote jį nužudyti.

Norėdami išspręsti šią problemą, galite nurodyti šį jungiklį, kuris tik užmuša failus, atitinkančius tikslų pavadinimą.

killall-e

Ignoruoti atvejį, kai žudo programas

Norėdami įsitikinti, kad komanda killall ignoruoja pateiktą programos pavadinimą, naudokite šią komandą:

killall-i
killall - negreitai

Nužudyk visas programas toje pačioje grupėje

Kai paleisite tokią komandą kaip ši, ji sukurs du procesus:

ps -ef | mažiau

Viena komanda yra ps-ef dalis, kurioje išvardijami visi jūsų sistemoje vykdomi procesai, o išvestis persiunčiama į mažesnę komandą .

Abi programos priklauso vienai grupei, kuri yra bash.

Norėdami nužudyti abi programas vienu metu, galite paleisti šią komandą:

killall-g

Pavyzdžiui, jei norite nužudyti visas komandas, veikiančias bash lange, paleiskite šiuos veiksmus:

killall-g bash

Beje, norėdami pridėti visas vykdomąsias grupes, paleiskite šią komandą:

ps-g

Gaukite patvirtinimą prieš žudant programas

Akivaizdu, kad komanda killall yra gana galinga komanda ir nenorite netyčia nužudyti netinkamų procesų.

Naudodami šį jungiklį, jums bus klausiama, ar esate įsitikinęs prieš kiekvieną procesą nužudžius.

killall-i

Nužudyk procesus, kurie dirba tam tikrą laiką

Įsivaizduokite, kad naudojatės programa ir ji trunka ilgiau nei tikėjotės.

Galite nužudyti komandą taip:

killall -o h4

H aukščiau esančioje komandoje reiškia valandas.

Taip pat galite nurodyti bet kurį iš šių:

Arba, jei norite nužudyti komandas, kurios ką tik pradėjo veikti, galite naudoti šį jungiklį:

killall-y h4

Šį kartą komanda killall nužudys visas programas, veikiančias mažiau nei 4 valandas.

Nepasakyk man, kai procesas nėra nužudytas

Pagal nutylėjimą, jei bandysite nužudyti neveikiančią programą, gausite šią klaidą:

programname: procesas nerastas

Jei nenorite, kad būtų pranešta, jei procesas nerastas, naudokite šią komandą:

killall -q

Reguliarių frazių naudojimas

Užuot nurodę programos ar komandos pavadinimą, galite nurodyti įprastinę išraišką, taigi visi veiksmai, kurie atitinka reguliarųjį išraišką, uždaromi naudojant komandą killall.

Norėdami naudoti įprastinę išraišką, naudokite šią komandą:

killall-r

Kill programos, kuriose nurodomas naudotojas

Jei norite nužudyti programą, kurią vykdo konkretus vartotojas, galite nurodyti šią komandą:

killall -u

Jei norite nužudyti visus konkretaus vartotojo procesus, galite praleisti programos pavadinimą.

Laukti, kol baigsis "killall"

Pagal nutylėjimą "killall" grįš tiesiai atgal į terminalą, kai paleidžiate jį, bet jūs galite priversti "killall" palaukti, kol baigsis visi nurodyti procesai prieš grąžinant į terminalo langą.

Norėdami tai padaryti, paleiskite šią komandą:

killall-w

Jei programa niekada neišnyktų, tada "killall" taip pat toliau gyvens.

Signalų signalų signalai

Pagal nutylėjimą komanda killall siunčia SIGTERM signalą programoms, kad jas uždarytų, ir tai yra švariausias būdas žudyti programas.

Tačiau yra kitų signalų, kuriuos galite siųsti naudodami komandą killall, ir jūs galite juos išvardyti naudodami šią komandą:

killall -l

Grąžinamas sąrašas bus toks:

Šis sąrašas yra labai ilgas. Norėdami perskaityti apie tai, kas reiškia šiuos signalus, paleiskite šią komandą:

vyras 7 signalas

Apskritai turėtumėte naudoti numatytąją "SIGTERM" parinktį, tačiau, jei programa atsisako mirti, galite naudoti "SIGKILL", kuri verčia programą uždaryti, nors netinkamai.

Kiti būdai, kaip nužudyti programą

Yra dar 5 būdai, kaip nužudyti "Linux" programą, kaip parodyta susietame vadove.

Tačiau, norėdami sutaupyti pastangų spustelėti nuorodą čia yra skyrius, rodantis, kokios yra šios komandos, kodėl galite naudoti šias komandas per "killall".

Pirmasis yra komanda "kill". "Killall" komanda, kaip matėte, puikiai žudo visas tos pačios programos versijas. "Žudymo" komanda yra skirta nužudyti vieną procesą vienu metu ir todėl yra labiau nukreipta.

Norėdami paleisti komandą "kill", turite žinoti proceso ID procesą, kurį norite nužudyti. Tam galite naudoti ps komandą .

Pavyzdžiui, norėdami rasti veikiančią "Firefox" versiją, galite paleisti šią komandą:

ps -ef | grep firefox

Galų gale pamatysite duomenų eilutę naudodami komandą / usr / lib / firefox / firefox. Linijos pradžioje pamatysite savo vartotojo vardą ir numerį, kai naudotojo ID yra proceso ID.

Naudodami proceso ID galite nužudyti "Firefox" paleidę šią komandą:

kill -9

Kitas būdas nužudyti programą yra naudojant komandą xkill. Tai paprastai naudojama žudyti netinkamas grafines programas.

Norėdami nužudyti tokią programą kaip "Firefox", atidarykite terminalą ir paleiskite šią komandą:

xkill

Dabar kursorius pasikeis į didelį baltąjį kryžių. Užveskite pelės žymeklį ant lango, kurį norite nužudyti, ir spustelėkite kairiuoju pelės klavišu. Programos išeis iš karto.

Kitas būdas nužudyti procesą yra naudojant "Linux" viršuje esančią komandą. Viršutinė komanda nurodo visus jūsų sistemoje vykdomus procesus.

Viskas, ką jums reikia padaryti, kad nužudytumėte procesą, yra paspauskite klavišą "k" ir įveskite prašomo proceso ID, kurį norite nužudyti.

Anksčiau šiame skyriuje buvo nužudyti komanda ir jums reikėjo rasti procesą naudojant ps komandą ir tada nužudyti procesą naudojant komandą kill.

Tai nėra paprasčiausias būdas bet kokiomis priemonėmis.

Viena vertus, komanda ps grąžina daugybę informacijos, kurios jums nereikia. Viskas, ko norėjote, buvo proceso ID. Proceso ID galite gauti paprasčiau, paleisdami šią komandą:

pgrep firefox

Pirmiau pateiktos komandos rezultatas yra tiesiog "Firefox" proceso ID. Dabar galite paleisti komandą "kill" taip:

nužudyti

(Pakeiskite su faktiniu proceso ID, grąžintu pgrep).

Tačiau iš tikrųjų paprasčiau paprasčiausiai pateikti programos pavadinimą į pkill taip:

pkill firefox

Galiausiai galite naudoti grafinį įrankį, tokią kaip "Ubuntu" pateiktą "Sistemos monitorių". Norėdami paleisti "System Monitor", paspauskite super klavišą ("Windows" raktą daugumoje kompiuterių) ir įveskite "sysmon" į paieškos juostą. Kai pasirodys sistemos monitoriaus piktograma, spustelėkite ją.

Sistemos monitorius rodo procesų sąrašą. Norėdami baigti programą švariu būdu, pasirinkite ją ir paspauskite pabaigos klavišą ekrano apačioje (arba paspauskite CTRL ir E). Jei tai nepadeda, spustelėkite dešiniuoju pelės klavišu ir pasirinkite "Nužudyti" arba paspauskite CTRL ir K procese, kurį norite nužudyti.