Zabij proces jednym poleceniem

Wiele razy musimy zabić proces przez terminal. Jeśli znamy pełną nazwę procesu (na przykład: kate) nie mamy żadnych problemów, proste:

killall kate

Rozwiązuje problem za nas… ale co się stanie, jeśli nie znamy dokładnej nazwy procesu?

W takich przypadkach musimy wymienić wszystkie procesy z ps aux jak pokazano na poniższym zrzucie ekranu:


Następnie poszukaj PID procesu, którego w tym przypadku szukamy kate:


Do tego czasu wykonaj:

kill 3808

I voila, tam kończymy proces.

Cóż ... w jednej linii możemy wyszukać proces (bez znajomości pełnej nazwy), znaleźć jego PID, a także go zabić:
ps ax | grep kat | grep -v grep | awk '{print $2}' | xargs kill

Jak widzisz:

  1. Wymieniamy procesy (ps aux)
  2. Nie znamy pełnej ani dokładnej nazwy kate (hej, może to być redaktor Kate lub coś w tym rodzaju), więc filtrujemy tylko według kot (grep kat)
  3. Ale otrzymamy dwa procesy związane z kat, jeśli użyjemy tylko tego filtru, jeden to proces Kate, a drugi to proces, który aktywujemy do filtrowania, zostawiam ci zrzut ekranu, abyś mógł dokończyć rozumienie: (Zauważ, że istnieją 2 linie, czyli 2 procesy)

  4. Aby uniknąć tego, co zostało wyjaśnione wcześniej, tworzymy kolejny filtr (grep -v grep). Co zrobimy odwrotnie ... jeśli filtrujemy za pomocą grep, pokaże tylko dopasowania z filtrem, dobrze z grep -v Polecamy NIE pokazywać dopasowań, ale pokazywać, co nie pasuje. Pokażę ci zrzut ekranu, jak wynik byłby do tej pory: (Zauważ, że teraz pojawia się tylko proces Kate)

  5. Cóż, mamy już izolowany proces, który chcemy zabić, teraz musimy tylko wyodrębnić jego PID, który jest drugą liczbą, czyli 4062. A PID znajduje się w drugiej kolumnie (Pierwsza kolumna zawiera użytkownika z UID 1), więc używając awk możemy powiedzieć, że pokazuje on tylko z tego wiersza to, co znajduje w drugiej kolumnie (awk '{print $ 2}'). Który pokazałby nam tylko numer procesu, to znaczy tylko PID pojawi się w terminalu.
  6. Ale nie chcemy pokazywać PID-a, chcemy zabić proces tym PIDem ... więc zrobimy to, przekazujemy to, co mamy do tej pory do polecenia zabić i gotowy (xargs zabijają)
  7. Co to znaczy xargs? ... proste, w tym przypadku nie możemy przekazać PID, aby zabić tylko rurami ( | ), to po prostu za mało, więc xargs (który pozwala na przekazywanie wartości lub danych, a następnie ich wykonywanie lub zabijanie) jest tym, co pozwoli nam dokończyć pracę.

I tu się to kończy 😀

Tak ... Wiem, że wydaje się to nieco skomplikowane i właśnie dlatego starałem się to wyjaśnić najlepiej, jak umiałem.

Sé que posiblemente a pocos les hará falta este comando, pero el objetivo de este artículo es el mismo que el de DesdeLinux, enseñarles algo nuevo cada día, intentando siempre que pierdan el miedo o temor a Linux… y, personalmente me encantaría también que aprendan a usar sin temor la terminal 😉

W każdym razie ... Mam nadzieję, że wydało Ci się to interesujące, ciągle uczę się obsługi Awk co jest naprawdę świetne hehe.

pozdrowienia


34 komentarzy, zostaw swoje

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   ezitok powiedział

    To prawda, awk był dla mnie bardzo przydatny i myślę, że każdy, kto musi manipulować strukturalnymi plikami tekstowymi, powinien wiedzieć, jak go używać.

    Mam tylko pytanie (które nie ma nic wspólnego z wejściem :D), w jaki sposób (i jakim programem) zrobiłeś ten efekt rozmycia, który pozwala podświetlić część zrzutu ekranu?

    Pozdrowienia.

    1.    ezitok powiedział

      Probando jeśli to format działa, a jeśli nie powie mi ktoś jak to zrobić

      Dziękuję bardzo.

    2.    KZKG ^ Gaara powiedział

      Cóż, tak… Odkryłem na nowo Linuksa teraz, kiedy wiem, jak pracować z awk HAHAHAHA.
      O efekcie i takie tam nic... to tylko Gimp 😀

      Wybieram fragment, który chcę podświetlić, wycinam go za pomocą [Ctrl]+[X] i wklejam jako nową warstwę, następnie wybieram dolną warstwę (którą chcę zaciemnić) i przechodzę do Filtry-»Gaussowski (lub cokolwiek wy przeliterujecie hehe) i gotowe.
      Teraz, aby nadać mu ciemny efekt, po prostu tworzę nową warstwę (białe tło) i umieszczam ją między tymi dwoma, które już miałem, nadaję jej czarny kolor i na pasku przezroczystości (prawy górny róg) przesuwam ją tam, gdzie Osiągam zamierzony efekt. .

      Pozdrawiam i dziękuję za komentarz 🙂

      1.    Roberto Evolving Santana powiedział

        Duży!!

  2.   Manuel de la Fuente . , , , , , , , , , , , ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, , powiedział

    Jeśli proces pochodzi z programu, który jest widoczny, nic nie jest wygodniejsze niż pisanie xzabić w konsoli kliknij program do zabicia i to wszystko.

    1.    KZKG ^ Gaara powiedział

      kliknij program, aby zabić
      hehe tak... to przy założeniu, że masz GUI hehe.

      1.    Manuel de la Fuente . , , , , , , , , , , , ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, , powiedział

        Zgadza się, dlatego powiedziałem „jeśli proces pochodzi z programu, który jest widoczny”.

        1.    Windousian powiedział

          Łatwiej jest kliknąć przycisk z „X”. Powłoka GNOME nadal ma ten przycisk, prawda? :-D.

          1.    Manuel de la Fuente . , , , , , , , , , , , ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, , powiedział

            Jeśli program jest zamrożony (co jest głównym powodem, dla którego musiałbyś zabić jego proces), logiczne jest, że ten przycisk nie będzie reagował bez względu na to, jak mocno go naciśniesz.

            Myślę, że powłoka GNOME wkrótce go usunie, więc możesz zobaczyć, jakim cudem jest zamykanie okien przez przeciąganie ich na dół ekranu, jak w Windows 8. Nie trzeba dodawać, że na monitorach szerokoekranowych jest to fantastyczne ćwiczenie.

          2.    Windousian powiedział

            Teraz rozumiem. W takim przypadku wolę Control+Alt+Esc (w KDE).

            Nie mogę się doczekać nowych podglądów powłoki GNOME, to prawdziwa gratka.

  3.   właściwy powiedział

    Robi to samo, ale mniej pisania.
    W tym przypadku jako przykład wziąłem leafpad, dlatego w grep pojawia się leaf
    ps -e | grep leaf | awk '{print $1}' | xargs kill

    pozdrowienia

  4.   Sys powiedział

    Uff! Mój synu, spróbuj uruchomić „pgrep kat”, co oznacza „pgrep”.

    I uruchom „man pgrep”. I „man pidof”, które w niektórych przypadkach może być użyte jako „pidof”.

    I uruchom „ps aux | grep [k]at”, który nie zwróci w rezultacie „procesu, który aktywowaliśmy do filtrowania”, który komentujesz, oszczędzając w ten sposób pracę.

    Pozdrowienia!

    1.    Sys powiedział

      Aha, i „pkill”, który robi to, czego szukasz. Na przykład: „pkill kat”.

    2.    KZKG ^ Gaara powiedział

      O, ciekawe… Nie znałem pgrep 🙂
      Dzięki za wskazówkę 😀

      1.    Sys powiedział

        Dzięki Tobie i Twoim artykułom.

        Nawiasem mówiąc, w https://flossblog.wordpress.com/2009/11/11/truco-del-dia-excluir-al-proceso-grep-en-la-salida-de-ps-aux/ skomentuj technikę używania komend typu "ps aux | grep [name_of_the_program”, wyjaśniają to lepiej niż ja.

        Pozdrowienia!

        1.    KZKG ^ Gaara powiedział

          Dzięki za link 😀
          Eso es lo genial de que exista DesdeLinux… que no importa si eres usuario, redactor o admin, siempre todos aprendemos cosas nuevas 🙂

          Pozdrawiam i jeszcze raz dziękuję przyjacielu.

  5.   koste powiedział

    Bardzo dziękuję wszystkim za poświęcony czas i poświęcenie, to sprawia, że ​​warto odwiedzać i czytać tę stronę kilka razy dziennie.

    Dzięki jeszcze raz.

  6.   Panie Linuksie. powiedział

    To samo prawie zawsze dzieje się z KZKG^Gaara, jeśli chodzi o tego rodzaju wskazówki, jest inna osoba, która robi to samo za pomocą prostej komendy. Ale gratuluję mu, zawsze wnosi swój wkład.

    1.    KZKG ^ Gaara powiedział

      hehe tak… Wiem, jak zrobić misia X i przychodzę tutaj i dzielę się metodą, ale potem dzielą się prostszym sposobem na osiągnięcie tego samego hahaha, ale dzięki temu wszyscy wygrywamy, prawda? 😀

      1.    Truko22 powiedział

        tak jest 0/

      2.    Manuel de la Fuente . , , , , , , , , , , , ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, , powiedział

        Hahahaha, zawsze idziesz bardziej skomplikowaną drogą. 😀

        1.    KZKG ^ Gaara powiedział

          HAHAHA tak, zawsze myślałem: «Jeśli wiem, jak to zrobić w trudny sposób, będę wiedział, jak nauczyć się robić to w prosty sposób bez problemów.» I… vice versa nie działa tak samo hahaha.

  7.   Oscar powiedział

    Problem byłby, gdybyśmy mieli dwa procesy o podobnej nazwie.
    Na przykład proces kate i inny proces... mmm... powiedzmy kater xD
    Z takim rozkazem zabilibyśmy ich obu, prawda?

    1.    KZKG ^ Gaara powiedział

      No tak, tak by się stało 🙂

  8.   Truko22 powiedział

    TT biedna Kate. Używam xkill w KDE, uruchamia się szybko za pomocą „ctrl+alt+esc” lub też „ctrl + Esc” otwiera „Działania systemowe” i robi to graficznie. Teraz tej procedury przez terminal trzeba się nauczyć, chociaż mam serwer domowy ze stabilnym debianem i wcale się nie zawiesza.

  9.   Julian powiedział

    Genialny! Właśnie teraz, gdy biorę udział w kursie systemów operacyjnych i muszę wykonywać zadania z terminalem, Twój samouczek był bardzo pomocny! Dziękuję

  10.   pablo powiedział

    Bardzo dobrze wyjaśnione, blog jest świetny, właśnie go znalazłem, dodaję do zakładek. Dziękuję.

  11.   Zaraz powiedział

    Cóż, to dobrze, chociaż są chwile, kiedy nie można ich zabić….

  12.   dkoj powiedział

    pkll -9

    1.    dkoj powiedział

      pkill -9 "nazwa procesu"
      W poprzednim komentarzu wstawiłem "" ale nie wyszło xD

  13.   najlepiej powiedział

    dobry wieczór, czytam twój kanał od jakiegoś czasu i dzisiaj postanowiłem wypróbować to polecenie ps ax | grep chrome | grep -v grep | awk '{print $1}' | xargs kill i napotkałem następujący błąd: nie można znaleźć procesu „?” Mając niewielkie doświadczenie z bashem zdecydowałem się na kilka modyfikacji i na koniec został mi ps -A | grep c | grep -v grep | awk '{print $1}' | xargs kill, ponieważ ps -A służy do pokazania wszystkich procesów w sposób podsumowujący, a drugą anomalią było to, że rzucił TTY „?” i to zadziałało dla mnie dziękuję bardzo bardzo lubię twojego bloga, pozdrawiam

  14.   Michał powiedział

    Dzięki stary, nie możesz sobie wyobrazić liczby problemów, które właśnie rozwiązałeś dla mnie za pomocą tego polecenia.

    Pozdrowienia !!

  15.   emaluga powiedział

    DZIĘKUJĘ !!!!

  16.   Arturo powiedział

    Świetny wpis. Właśnie tego szukałem i nie wiedziałem, jak to zrobić, a wyjaśnienie jest bardzo dobre.

    Pozdrowienia.