Ölj meg egy folyamatot egyetlen paranccsal

Sokszor meg kell ölnünk egy folyamatot egy terminálon keresztül. Ha tudjuk a folyamat teljes nevét (például: kate) nincsenek problémáink, egyszerű:

killall kate

Számunkra megoldja a problémát ... de mi van, ha nem tudjuk a folyamat pontos nevét?

Ilyenkor fel kell sorolnunk az összes folyamatot ps to a következő képernyőképen látható módon:


Ezután keresse meg a folyamat PID-jét, amelynek ebben az esetben a PID-jét keressük kate:


Addigra tegye a következőket:

kill 3808

És voila, ott megöljük a folyamatot.

Nos ... egyetlen sorban megkereshetjük a folyamatot (anélkül, hogy tudnunk kellene a teljes nevét), megtudhatjuk a PID-jét, és meg is ölhetjük:
ps ax | grep kat | grep -v grep | awk '{print $2}' | xargs kill

Amint látod:

  1. Felsoroljuk a folyamatokat (ps to)
  2. Nem ismerjük a teljes vagy pontos nevét kate (hé, lehet, hogy kate-editor vagy ilyesmi), így csak az alapján szűrünk kat (grep kat)
  3. De két kat-hoz kapcsolódó folyamatot kapunk, ha csak ezt a szűrőt használjuk, az egyik a kate folyamat, a másik pedig a szűréshez aktivált folyamat, hagyok neked egy képernyőképet, hogy befejezhesd a megértést: (Figyelje meg, hogy 2 sor van, vagyis 2 folyamat van)

  4. Az előzőekben kifejtettek elkerülése érdekében készítünk egy másik szűrőt (grep -v grep). Amit az ellenkezőjével fogunk tenni ... ha a grep segítségével szűrünk, akkor csak a szűrővel való egyezéseket mutatja, jól grep -v Utasítjuk, hogy NE a meccseket mutassa, hanem azt, hogy mi nem egyezik. Mutatom a képernyőképet az eddigi eredményekről: (Vegye figyelembe, hogy most már csak a kate folyamata jelenik meg)

  5. Nos, már megvan az a folyamat, amelyet meg akarunk ölni, és most csak a PID-jét kell kinyernünk, ami a 2. szám, vagyis 4062. A PID pedig a 2. oszlopban található (Az 1. oszlop 1000 UID felhasználóval rendelkezik), tehát az awk használatával azt mondhatjuk, hogy abból a sorból csak azt mutatja meg, amit a 2. oszlopban talál (awk '{print $ 2}'). Ami csak a folyamat számát mutatja meg nekünk, vagyis csak a PID jelenik meg a terminálon.
  6. De nem akarjuk megmutatni a PID-t, azt akarjuk, hogy megöljük a folyamatot azzal a PID-vel ... ezért megtesszük, átadjuk a parancs felé az eddigieket megöl és kész (xargs öl)
  7. Mit jelent az xargs? ... egyszerű, ebben az esetben nem adhatjuk át a PID-t, hogy csak csövekkel öljünk ( | ), ez egyszerűen nem elég, ezért az xargs (amely lehetővé teszi az értékek vagy adatok átadását, majd végrehajtását vagy megölését) lehetővé teszi számunkra a munka befejezését.

És itt vége 😀

Igen ... tudom, hogy ez kissé összetettnek tűnik, éppen ezért próbáltam a lehető legjobban megmagyarázni.

Tudom, hogy valószínűleg keveseknek lesz szüksége erre a parancsra, de ennek a cikknek a célja ugyanaz, mint a cikké DesdeLinux, minden nap tanítsd meg nekik valami újat, mindig próbáld rávenni őket, hogy elveszítsék a Linuxtól való félelmüket... és személy szerint én is örülnék, ha megtanulnák félelem nélkül használni a terminált 😉

Egyébként ... Remélem érdekesnek találta, folyamatosan tanulom a használatát awk ami igazán nagyszerű hehe.

Üdvözlet


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.

  1.   ezitoc dijo

    Igaz, az awk nagyon hasznos volt számomra, és úgy gondolom, hogy mindenkinek, akinek manipulálnia kell a strukturált szöveges fájlokat, ajánlatos ismernie a használatát.

    Csak egy kérdésem lenne (aminek semmi köze a bemenethez: D), hogyan (és milyen programmal) hajtotta végre azt az elmosódási hatást, amely lehetővé teszi, hogy kiemelje a képernyőkép egy részét?

    Üdvözlet.

    1.    ezitoc dijo

      Tesztelés ha ez a formátumból működik és ha nem valaki mondja meg, hogyan kell csinálni

      Köszönöm szépen.

    2.    KZKG ^ Gaara dijo

      Nos igen ... Most fedeztem fel újra a Linuxot, amikor tudom, hogyan kell működni az awk HAHAHAHA-val.
      A hatásról meg ilyenekről semmi ... csak Gimp 😀

      Kiválasztom a kiemelni kívánt részt, kivágom a [Ctrl] + [X] gombbal, és új rétegként beillesztem, majd kiválasztom az alsó réteget (amelyet át akarok opálozni), és megyek a Szűrők- » Gaussian (vagy bármit írsz hehe) és voila.
      A sötét hatás érdekében egyszerűen létrehozok egy új réteget (fehér háttér), és elhelyezem e kettő között, ami már megvolt, fekete színt adok neki, és az átlátszósági sávban (jobb felső sarokban) áthelyezem Elértem a kívánt hatást.

      Üdvözlet és köszönet a megjegyzésért 🙂

      1.    Roberto Evolving Santana dijo

        Nagy!!

  2.   A Forrás kézikönyve dijo

    Ha a folyamat egy látható programból származik, semmi sem kényelmesebb, mint a gépelés xkill a konzolon kattintson a programra, hogy megölje, és voila.

    1.    KZKG ^ Gaara dijo

      kattintson a programra, hogy megölje
      hehe igen ... ez azt feltételezi, hogy van GUI hehe.

      1.    A Forrás kézikönyve dijo

        Így van, ezért mondtam "ha a folyamat egy látható programból származik".

        1.    Windousian dijo

          Könnyebb rákattintani az "X" jelű gombra. A GNOME Shellnek még mindig megvan a gombja? :-D.

          1.    A Forrás kézikönyve dijo

            Ha a program lefagy (ami a fő oka annak, hogy meg kell ölnie a folyamatot) logikus, hogy ez a gomb nem reagál, függetlenül attól, hogy mennyire nyomja meg.

            Azt hiszem, a GNOME Shell hamarosan eltávolítja, így láthatja az ablakok bezárásának tapintható csodáját, ha a képernyő aljára húzza őket, mint a Windows 8 rendszerben. Mondanom sem kell, hogy a szélesvásznú monitorokon ez fantasztikus gyakorlat.

          2.    Windousian dijo

            Most már értem. Ebben az esetben a Control + Alt + Esc-t részesítem előnyben (KDE-ben).

            Alig várom, hogy megnézzem az új GNOME Shell előzeteseket, igazi csemege.

  3.   megfelelő dijo

    Ez ugyanezt teszi, de kevesebbet írnak.
    Ebben az esetben a leafpad-ot vettem példának, ezért jelenik meg a levél grep-ben
    ps -e | grep leaf | awk '{print $1}' | xargs kill

    Üdvözlet

  4.   Sys dijo

    Phew! Fiam, próbáld futtatni a "pgrep kat" -t, ami valamire a "pgrep".

    És a "man pgrep" végrehajtása. És a "man pidof", amely néha a "pidof" segíthet.

    És végrehajtani «ps aux | grep [k] at ", amely nem adja vissza" azt a folyamatot, amelyet aktiválunk a szűréshez ", amelyet kommentelsz, ami munkádat spórolja.

    Üdvözlet!

    1.    Sys dijo

      Ja, és a "pkill", ami azt csinálja, amit keres. Például: "pkill kat".

    2.    KZKG ^ Gaara dijo

      Ó, érdekes ... nem ismertem a pgrepet
      Köszönöm a tippet 😀

      1.    Sys dijo

        Köszönet neked és cikkeidnek.

        Egyébként be https://flossblog.wordpress.com/2009/11/11/truco-del-dia-excluir-al-proceso-grep-en-la-salida-de-ps-aux/ kommentálja a "ps aux |" parancsok használatának technikáját grep [n] programnév ", ott jobban megmagyarázzák, mint én.

        Üdvözlet!

        1.    KZKG ^ Gaara dijo

          Köszönöm a linket 😀
          Ez a nagyszerű a létezésben. DesdeLinux…nem számít, hogy felhasználó, szerkesztő vagy rendszergazda, mindannyian mindig tanulunk új dolgokat 🙂

          Üdvözlet és köszönöm még egyszer barátom.

  5.   költség dijo

    Nagyon köszönöm mindenkinek az idejét és az odaadását, ezért érdemes naponta többször meglátogatni és elolvasni ezt az oldalt.

    Köszönöm mégegyszer.

  6.   Mr. Linux. dijo

    A KZKG ^ Gaara szinte mindig ugyanaz, ha ilyen jellegű tippekről van szó, van még egy személy, aki ugyanezt egy egyszerű paranccsal teszi. De gratulálok, mindig folyamatosan közreműködik.

    1.    KZKG ^ Gaara dijo

      hehe yep ... Tudom, hogyan kell csinálni X osa és jövök ide, és megosztom a módszert, de aztán megosztanak egy egyszerűbb módszert ugyanarra a célra, hahaha, de ezzel mindnyájan nyerünk, igaz? 😀

      1.    truko22 dijo

        Így van 0 /

      2.    A Forrás kézikönyve dijo

        Hahaha, te mindig a legbonyolultabb utat járod be. 😀

        1.    KZKG ^ Gaara dijo

          HAHAHA igen, mindig is azt gondoltam: «Ha tudom, hogyan kell ezt a nehéz utat megtenni, akkor megtanulom egyszerű módon csinálni problémamentesen.»És… fordítva, nem ugyanaz a helyzet, hahaha.

  7.   Oscar dijo

    A probléma az lenne, ha két hasonló nevű folyamatunk lenne.
    Például egy kate folyamat, és egy másik ... mmm ... mondjuk a kater xD
    Ilyen paranccsal megölnénk mindkettőjüket, igaz?

    1.    KZKG ^ Gaara dijo

      Hát igen, ez megtörténne 🙂

  8.   truko22 dijo

    TT szegény Kate. Az xkill-t használom a KDE-ben, gyorsan elindul a "ctrl + alt + esc" vagy a "ctrl + Esc" nyitott "System Activities" -nel és grafikusan. Most ezt az eljárást meg kell tanulni a terminálon keresztül, bár van egy otthoni szerverem, stabil debian-nal, és ez egyáltalán nem lóg.

  9.   Yulian dijo

    Ragyogó! Most, hogy az operációs rendszerek tanfolyamán veszek részt, és feladatokat kell elvégeznem a terminállal, az oktatóanyag nagy segítség volt! köszönöm

  10.   Pablo dijo

    Nagyon jól megmagyarázva, nagyszerű blog, amit most megismertem, a kedvencekhez mutatom. Köszönöm.

  11.   Mindjárt dijo

    Nos, jó, bár vannak olyan esetek, amikor nem lehet őket megölni ...

  12.   dcoy dijo

    pkill -9

    1.    dcoy dijo

      pkill -9 "folyamat neve"
      az előző kommentbe «» »-t tettem, de nem jött ki xD

  13.   legjobb dijo

    jó éjt, van időm elolvasni a hírcsatornádat, és ma úgy döntöttem, hogy kipróbálom ezt a parancsot: ps ax | grep chrome | grep -v grep | awk '{print $ 1}' | Az xargs kill és a következő kill hibát kapom: nem találom a "?" folyamatot a bash-ban szerzett kevés tapasztalattal úgy döntöttem, hogy módosítok, és végül a ps -A | marad grep c | grep -v grep | awk '{print $ 1}' | Az xargs kill, tekintettel arra, hogy a ps -A-t használják az összes folyamat összefoglaló megjelenítésére, és a második anomália az volt, hogy a TTY-t «?» és ez nekem bevált, köszönöm szépen, nagyon szeretem a blogodat, üdvözletedet

  14.   Michael dijo

    Köszönöm compa, nem tudod elképzelni, hogy mennyi problémát oldott meg nekem ezzel a paranccsal.

    Üdvözlet!

  15.   email dijo

    KÖSZÖNÖM !!!!

  16.   Arturo dijo

    Kiváló poszt. Csak amit kerestem, és nem tudtam, hogyan kell csinálni, és a magyarázat nagyon jó volt.

    Üdvözlet.