Paano Pumatay ng Mga Proseso Paggamit ng Linux

Karamihan sa mga oras na nais mo ang isang programa upang tapusin sa pamamagitan ng kanyang sariling paraan, o, kung ito ay isang graphical na application, sa pamamagitan ng paggamit ng naaangkop na opsyon sa menu o sa pamamagitan ng paggamit ng krus sa sulok.

Tuwing kadalasan ang isang programa ay mag-hang, kung saan ay kakailanganin mo ng isang paraan para sa pagpatay nito. Maaari mo ring pumatay ng isang programa na tumatakbo sa background na hindi mo na kailangang tumakbo.

Ang gabay na ito ay nagbibigay ng isang paraan para sa pagpatay sa lahat ng mga bersyon ng parehong application na tumatakbo sa iyong system.

Paano Gamitin Ang killall Command

Pinapatay ng utos ng killall ang lahat ng mga proseso sa pamamagitan ng pangalan. Ang ibig sabihin nito kung mayroon kang tatlong bersyon ng parehong programa na nagpapatakbo ng killall command ay papatayin ang lahat ng tatlo.

Halimbawa, buksan ang isang maliit na programa tulad ng isang viewer ng imahe. Magbukas ngayon ng isa pang kopya ng parehong viewer ng imahe. Para sa aking halimbawa pinili ko ang Xviewer na isang clone ng Eye Of Gnome .

Ngayon buksan ang isang terminal at i-type sa sumusunod na command:

patayin lahat

Halimbawa upang patayin ang lahat ng mga pangyayari ng Xviewer i-type ang mga sumusunod:

killall xviewer

Ang parehong mga pagkakataon ng programa na iyong pinili upang patayin ngayon ay malapit na.

Patayin ang Eksaktong Proseso

Ang killall ay maaaring makagawa ng mga kakaibang resulta. Well dito ay isang dahilan kung bakit. Kung mayroon kang isang command name na higit sa 15 character na mahaba pagkatapos ay ang killall command ay gagana lamang sa unang 15 na mga character. Kung kaya't mayroon kang dalawang mga programa na nagbabahagi ng parehong unang 15 mga character ang parehong mga programa ay kakanselahin kahit na gusto mo lamang na patayin ang isa.

Upang makakuha ng paligid na ito maaari mong tukuyin ang sumusunod na switch na kung saan ay pumatay lamang ng mga file na tumutugma sa eksaktong pangalan.

killall -e

Huwag pansinin ang Kaso Nang Pagpatay ng Mga Programa

Upang matiyak na hindi pinapansin ng utos ng killall ang kaso ng pangalan ng programa na binigay mo gamitin ang sumusunod na command:

killall -I
killall --ignore-case

Patayin ang Lahat ng Programa Sa Parehong Grupo

Kapag nagpatakbo ka ng isang command tulad ng sumusunod na ito ay bubuo ito ng dalawang proseso:

ps -ef | mas mababa

Ang isang utos ay para sa bahagi ps -ef na naglilista ng lahat ng mga proseso ng pagpapatakbo sa iyong system at ang output ay piped sa mas kaunting command .

Ang parehong mga programa ay kabilang sa parehong grupo na kung saan ay malakas na palo.

Upang patayin ang parehong mga programa sa sandaling maaari mong patakbuhin ang sumusunod na command:

killall -g

Halimbawa upang patayin ang lahat ng mga command na tumatakbo sa isang bash shell patakbuhin ang mga sumusunod:

killall -g bash

Sinasadya na ilista ang lahat ng tumatakbong grupo na tumakbo sa sumusunod na command:

ps -g

Kumuha ng Kumpirmasyon Bago ang Mga Programa sa Pagpatay

Malinaw na ang command na killall ay isang malakas na command at hindi mo nais na aksidenteng patayin ang mga maling proseso.

Gamit ang mga sumusunod na switch tatanungin ka kung sigurado ka na bago patayin ang bawat proseso.

killall -i

Patayin ang mga Proseso Na Nagpatakbo Para sa Isang Tiyak na Halaga ng Oras

Isipin na ikaw ay nagpapatakbo ng isang programa at ito ay tumatagal ng isang mas mahaba kaysa sa inaasahan mo ito.

Maaari mong patayin ang utos sa sumusunod na paraan:

killall -o h4

Ang h sa utos sa itaas ay kumakatawan sa mga oras.

Maaari mo ring tukuyin ang alinman sa mga sumusunod:

Bilang kahalili, kung nais mong pumatay ng mga utos na nagsimula na lamang sa pagtakbo maaari mong gamitin ang sumusunod na switch:

killall -y h4

Sa oras na ito ang utos ng killall ay papatayin ang lahat ng mga programa na tumatakbo nang wala pang 4 na oras.

Huwag Sabihin sa Akin Kapag Isang Proseso ay Hindi Namatay

Sa pamamagitan ng default kung susubukan mo at patayin ang isang programa na hindi tumatakbo tatanggap ka ng sumusunod na error:

programname: walang natagpuang proseso

Kung hindi mo nais na masabihan kung ang proseso ay hindi nahanap gamitin ang sumusunod na utos:

killall -q

Paggamit ng Regular Expression

Sa halip na tukuyin ang pangalan ng isang programa o utos maaari mong tukuyin ang isang regular na expression upang ang lahat ng mga proseso na tumutugma sa regular na expression ay sarado sa pamamagitan ng killall command.

Upang gamitin ang regular na expression gamitin ang sumusunod na command:

killall -r

Patayin ang Mga Programa Para sa Isang Tukuyin ang User

Kung gusto mong patayin ang isang programa na pinapatakbo ng isang tukoy na user maaari mong tukuyin ang sumusunod na utos:

killall -u

Kung gusto mong patayin ang lahat ng mga proseso para sa isang partikular na user maaari mong alisin ang pangalan ng programa.

Maghintay Para sa killall Upang Tapusin

Sa pamamagitan ng default killall ay babalik nang diretso pabalik sa terminal kapag pinapatakbo mo ito ngunit maaari mong pilitin ang killall upang maghintay hanggang ang lahat ng mga prosesong tinukoy ay sarado bago ka bumalik sa terminal window.

Upang gawin ito patakbuhin ang sumusunod na command:

killall -w

Kung ang programa ay hindi kailanman namatay pagkatapos killall ay patuloy na mabuhay sa.

Signal Signal Signal

Sa pamamagitan ng default, ang killall command ay nagpapadala ng signal ng SIGTERM sa mga programa upang makuha ang mga ito upang isara at ito ang pinakamalinis na paraan para sa pagpatay ng mga programa.

Mayroong iba pang mga signal na maaari mong ipadala gamit ang killall command at maaari mong ilista ang mga ito gamit ang sumusunod na command:

killall -l

Ang listahan ay ibinalik ay magiging ganito:

Ang listahan na iyon ay lubhang mahaba. Upang basahin ang tungkol sa kung ano ang ibig sabihin ng mga signal na ito ay patakbuhin ang sumusunod na utos:

tao 7 signal

Sa pangkalahatan dapat mong gamitin ang default na pagpipilian ng SIGTERM ngunit kung ang programa ay tumangging mamatay maaari mong gamitin ang SIGKILL na pwersa ang programa upang isara kahit na sa isang undignified na paraan.

Iba Pang Mga Paraan Upang Patayin ang Isang Programa

May 5 iba pang mga paraan upang patayin ang isang Linux application bilang naka-highlight sa naka-link na gabay.

Gayunpaman upang i-save mo ang pagsisikap ng pag-click sa link dito ay isang seksyon na nagpapakita kung ano ang mga utos ay kung bakit maaari mong gamitin ang mga utos sa paglipas ng killall.

Ang una ay ang command na pumatay. Ang killall command na nakita mo ay mahusay sa pagpatay sa lahat ng mga bersyon ng parehong programa. Ang utos ng pumatay ay idinisenyo upang patayin ang isang proseso sa isang pagkakataon at samakatuwid ay higit na naka-target.

Upang patakbuhin ang command na pumatay kailangan mong malaman ang ID ng proseso ng proseso na nais mong patayin. Para sa mga ito maaari mong gamitin ang ps utos .

Halimbawa upang makahanap ng isang tumatakbo na bersyon ng Firefox maaari mong patakbuhin ang sumusunod na command:

ps -ef | grep firefox

Makakakita ka ng isang linya ng data sa command / usr / lib / firefox / firefox sa dulo. Sa simula ng linya makikita mo ang iyong user ID at ang numero pagkatapos ang ID ng gumagamit ay ang ID ng proseso.

Gamit ang ID ng proseso maaari mong patayin ang Firefox sa pamamagitan ng pagpapatakbo ng sumusunod na command:

patayin -9

Ang isa pang paraan upang patayin ang isang programa ay ang paggamit ng xkill command. Ito ay pangkaraniwang ginagamit upang pumatay ng mga graphical na mga aplikasyon ng hindi kanais-nais.

Upang patayin ang isang programa tulad ng Firefox buksan ang isang terminal at patakbuhin ang sumusunod na command:

xkill

Ang cursor ay magbabago na ngayon sa isang malaking puting krus. Pasadahan ang cursor sa window na nais mong patayin at mag-click sa kaliwang pindutan ng mouse. Ang programa ay lalabas agad.

Ang isa pang paraan upang patayin ang isang proseso ay sa pamamagitan ng paggamit ng command sa itaas ng Linux. Inililista ng top command ang lahat ng mga proseso ng pagpapatakbo sa iyong system.

Ang kailangan mong gawin upang patayin ang isang proseso ay pindutin ang "k" key at ipasok ang ID ng proseso ng application na nais mong patayin.

Mas maaga sa seksyon na ito ang pumatay ng utos at kinakailangang matuklasan mo ang proseso gamit ang ps command at pagkatapos ay patayin ang proseso gamit ang command na pumatay.

Hindi ito ang pinakasimpleng opsyon sa anumang paraan.

Para sa isang bagay, ang ps command ay nagbabalik ng maraming impormasyon na hindi mo kailangan. Ang tanging gusto mo ay ang proseso ng ID. Maaari mong makuha ang proseso ng ID nang higit pa sa pamamagitan lamang ng pagpapatakbo ng sumusunod na command:

pgrep firefox

Ang resulta ng utos sa itaas ay ang proseso ng ID ng Firefox. Maaari mo na ngayong patakbuhin ang command na pumatay tulad ng sumusunod:

pumatay

(Palitan ang gamit ang aktwal na ID ng proseso na ibinalik ng pgrep).

Gayunpaman ay mas madali, gayunpaman, upang ibigay lamang ang pangalan ng programa sa pkill gaya ng sumusunod:

pkill firefox

Sa wakas, maaari mong gamitin ang isang graphical na tool tulad ng isa na ibinigay sa Ubuntu na tinatawag na "System Monitor". Upang patakbuhin ang "System Monitor" pindutin ang super key (Windows key sa karamihan sa mga computer) at i-type ang "sysmon" sa search bar. Kapag lumitaw ang icon ng monitor ng system, i-click ito.

Ipinapakita ng monitor ng system ang isang listahan ng mga proseso. Upang tapusin ang isang programa sa isang malinis na paraan piliin ito at pindutin ang end key sa ibaba ng screen (o pindutin ang CTRL at E). Kung nabigo ito upang gumana ang alinman sa right click at piliin ang "Patayin" o pindutin ang CTRL at K sa proseso na nais mong patayin.