Bunuh proses dengan satu perintah

Sering kali kita perlu membunuh proses melalui terminal. Sekiranya kita mengetahui nama penuh proses (contohnya: katekita tidak mempunyai masalah, mudah:

killall kate

Ini menyelesaikan masalah bagi kita ... tetapi bagaimana jika kita tidak tahu nama sebenarnya prosesnya?

Pada kesempatan tersebut, kita harus menyenaraikan semua proses ps aux seperti yang ditunjukkan dalam tangkapan skrin berikut:


Kemudian cari PID proses, yang dalam kes ini kita mencari PID dari kate:


Pada masa itu lakukan:

kill 3808

Dan voila, di sana kita membunuh prosesnya.

Baiklah ... dalam satu baris kita dapat mencari prosesnya (tanpa perlu mengetahui nama lengkapnya), mengetahui PID-nya, dan juga membunuhnya:
ps ax | grep kat | grep -v grep | awk '{print $2}' | xargs kill

Seperti yang anda lihat:

  1. Kami menyenaraikan proses (ps aux)
  2. Kami tidak tahu nama lengkap atau tepat kate (hei, boleh jadi editor kate atau semacamnyajadi kami hanya menapis mengikut kucing (grep kat)
  3. Tetapi kita akan mendapat dua proses yang berkaitan dengan kat jika kita hanya menggunakan penapis ini, satu adalah proses kate, dan yang lain adalah proses yang kita aktifkan untuk menapis, saya meninggalkan tangkapan skrin supaya anda dapat memahami:Perhatikan bahawa terdapat 2 baris, iaitu, 2 proses)

  4. Untuk mengelakkan apa yang dijelaskan sebelumnya, kami membuat penapis lain (grep -v grep). Apa yang akan kita lakukan sebaliknya ... jika kita menapis menggunakan grep, ia hanya akan menunjukkan padanan dengan penapis, baik dengan grep -v Kami mengarahkan anda TIDAK menunjukkan perlawanan, tetapi menunjukkan apa yang tidak sesuai. Saya menunjukkan kepada anda tangkapan skrin bagaimana hasilnya sejauh ini: (Perhatikan bahawa sekarang hanya proses kate yang muncul)

  5. Baiklah, kita sudah mengasingkan proses yang ingin kita bunuh, sekarang kita hanya perlu mengekstrak PID-nya yang merupakan nombor ke-2, iaitu 4062. Dan PID berada di ruangan ke-2 (Lajur pertama mengandungi pengguna dengan UID 1, jadi dengan menggunakan awk kita dapat mengatakan bahawa ia hanya menunjukkan dari garis itu apa yang dijumpainya di lajur ke-2 (awk '{cetak $ 2}'). Yang hanya akan menunjukkan kepada kita nombor proses, iaitu hanya PID yang akan muncul di terminal.
  6. Tetapi kami tidak mahu menunjukkan PID, apa yang kami mahukan adalah membunuh proses dengan PID itu ... jadi kami akan melakukannya, kami menyampaikan apa yang kami miliki sejauh ini kepada perintah membunuh dan bersedia (xargs membunuh)
  7. Apa maksud xarg itu? ... mudah, dalam kes ini kita tidak boleh lulus PID untuk membunuh hanya dengan paip ( | ), ini tidak cukup, jadi xargs (yang memungkinkan untuk menyampaikan nilai atau data dan kemudian melaksanakan atau membunuhnya) yang akan membolehkan kita menyelesaikan pekerjaan.

Dan di sini berakhir 😀

Ya ... saya tahu ini agak rumit, sebab itulah saya cuba menerangkannya dengan sebaik mungkin.

Saya tahu bahawa mungkin hanya sedikit yang memerlukan arahan ini, tetapi objektif artikel ini adalah sama seperti DesdeLinux, ajar mereka sesuatu yang baru setiap hari, sentiasa cuba membuat mereka hilang ketakutan terhadap Linux... dan, secara peribadi, saya juga suka untuk mereka belajar menggunakan terminal tanpa rasa takut 😉

Bagaimanapun ... Saya harap anda menganggapnya menarik, saya terus belajar bagaimana menggunakannya awk yang sungguh hebat hehe.

salam


34 komen, tinggalkan komen anda

Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.

  1.   ezitoc kata

    Memang benar, awk sangat berguna bagi saya dan saya berpendapat bahawa sesiapa sahaja yang perlu memanipulasi fail teks berstruktur sangat disarankan untuk mengetahui cara menggunakannya.

    Saya hanya mempunyai soalan (tidak ada kaitan dengan input: D), bagaimana (dan dengan program apa) anda membuat kesan kabur yang membolehkan anda menonjolkan sebahagian tangkapan skrin?

    Greetings.

    1.    ezitoc kata

      Ujian jika ini dari format ia berfungsi dan jika tidak seseorang memberitahu saya bagaimana untuk melakukannya

      Terima kasih banyak.

    2.    KZKG ^ Gaara kata

      Baiklah ... Saya telah menemui Linux sekarang bahawa saya tahu bagaimana untuk bekerja dengan HAHAHAHA awk.
      Tentang kesan dan semacamnya, tidak ada ... hanya Gimp 😀

      Saya memilih bahagian yang ingin saya ketengahkan, potong dengan [Ctrl] + [X] dan tampalkannya sebagai lapisan baru, kemudian saya pilih lapisan bawah (yang mana saya mahu legap) dan pergi ke Penapis- » Gaussian (atau apa sahaja yang anda tulis hehe) dan voila.
      Sekarang, untuk memberikan kesan gelap, saya hanya membuat lapisan baru (latar belakang putih) dan meletakkannya di antara kedua yang sudah saya miliki, saya memberikannya warna hitam dan di bar ketelusan (sudut kanan atas) saya memindahkannya ke tempat Saya mencapai kesan yang diinginkan.

      Salam dan terima kasih atas komen 🙂

      1.    Roberto Berkembang Santana kata

        Besar!!

  2.   Manual Sumber kata

    Sekiranya prosesnya dari program yang dapat dilihat, tidak ada yang lebih selesa daripada menaip xbunuh di konsol, klik pada program untuk membunuh, dan voila.

    1.    KZKG ^ Gaara kata

      klik pada program untuk membunuh
      hehe yeah ... itu mengandaikan anda mempunyai GUI hehe.

      1.    Manual Sumber kata

        Betul, itulah sebabnya saya berkata "jika prosesnya dari program yang dapat dilihat."

        1.    Windousian kata

          Lebih mudah mengklik butang dengan "X". GNOME Shell masih mempunyai butang itu bukan? :-D.

          1.    Manual Sumber kata

            Sekiranya program dibekukan (yang merupakan sebab utama mengapa anda perlu mematikan prosesnya) adalah logik bahawa butang ini tidak akan bertindak balas tidak kira berapa banyak anda menekannya.

            Saya rasa GNOME Shell akan menghapusnya tidak lama lagi sehingga anda dapat melihat keajaiban menutup tingkap dengan menyeretnya ke bahagian bawah skrin seperti di Windows 8. Tidak perlu dikatakan, pada monitor skrin lebar, ini adalah latihan yang hebat.

          2.    Windousian kata

            Kini saya memahami. Dalam kes itu, saya lebih suka Control + Alt + Esc (dalam KDE).

            Saya tidak sabar untuk melihat pratonton GNOME Shell yang baru, ini adalah hadiah sebenar.

  3.   betul kata

    Ini sama tetapi kurang ditulis.
    Dalam kes ini, saya mengambil daun daun sebagai contoh sebab itulah daun muncul dalam grep
    ps -e | grep leaf | awk '{print $1}' | xargs kill

    salam

  4.   Sys kata

    Phew! Anakku, cuba jalankan "pgrep kat", yang merupakan "pgrep" untuk sesuatu.

    Dan untuk melaksanakan "man pgrep". Dan "man pidof", yang kadang-kadang "pidof" dapat membantu anda.

    Dan untuk melaksanakan «ps aux | grep [k] di ", yang tidak akan kembali sebagai hasil" proses yang kami aktifkan untuk penapisan "yang anda komen, sehingga menjimatkan kerja anda.

    ¡Saludos!

    1.    Sys kata

      Oh, dan "pkill", yang melakukan apa yang anda cari. Contohnya: "pkill kat".

    2.    KZKG ^ Gaara kata

      Oh, menarik ... Saya tidak tahu pgrep 🙂
      Terima kasih atas petua 😀

      1.    Sys kata

        Terima kasih kepada anda dan artikel anda.

        By the way, di https://flossblog.wordpress.com/2009/11/11/truco-del-dia-excluir-al-proceso-grep-en-la-salida-de-ps-aux/ mengulas teknik menggunakan arahan seperti «ps aux | grep [n] program_nama ", mereka menerangkannya lebih baik daripada saya di sana.

        ¡Saludos!

        1.    KZKG ^ Gaara kata

          Terima kasih untuk pautan 😀
          Itulah perkara yang hebat tentang ia yang ada. DesdeLinux…tidak kira anda pengguna, editor atau pentadbir, kita semua sentiasa belajar perkara baharu 🙂

          Salam dan terima kasih sekali lagi kawan.

  5.   kos kata

    Terima kasih banyak atas masa dan dedikasi anda, menjadikannya layak untuk dikunjungi dan membaca laman web ini beberapa kali sehari.

    Terima kasih sekali lagi.

  6.   Tuan Linux. kata

    KZKG ^ Gaara hampir selalu sama, apabila terdapat petua seperti ini, ada orang lain yang melakukan perkara yang sama dengan perintah mudah. Tetapi saya mengucapkan tahniah kepadanya, dia sentiasa memberikan sumbangan.

    1.    KZKG ^ Gaara kata

      hehe yep ... Saya tahu bagaimana melakukan X osa dan saya datang ke sini dan berkongsi kaedahnya, tetapi kemudian mereka berkongsi cara yang lebih mudah untuk mencapai perkara yang sama hahaha, tetapi dengan ini kita semua menang, bukan? 😀

      1.    Truko22 kata

        Betul 0 /

      2.    Manual Sumber kata

        Hahaha, awak selalu jalan yang paling rumit. 😀

        1.    KZKG ^ Gaara kata

          HAHAHA ya, saya selalu berfikir: «Sekiranya saya tahu cara melakukannya dengan cara yang sukar, maka saya akan mengetahui cara belajar melakukannya dengan cara mudah tanpa masalah.»Dan… sebaliknya tidak berfungsi sama hahaha.

  7.   Oscar kata

    Masalahnya adalah jika kita mempunyai dua proses dengan nama yang serupa.
    Contohnya, proses kate, dan proses lain ... mmm ... katakanlah kater xD
    Dengan perintah seperti itu, kita akan membunuh mereka berdua, bukan?

    1.    KZKG ^ Gaara kata

      Baiklah, itu akan berlaku 🙂

  8.   Truko22 kata

    TT miskin Kate. Saya menggunakan xkill di KDE, ia dilancarkan dengan cepat dengan "ctrl + alt + esc" atau juga dengan "ctrl + Esc" open "Activity Systems" dan melakukannya secara grafik. Sekarang prosedur ini melalui terminal mesti dipelajari, walaupun saya mempunyai pelayan rumah dengan debian yang stabil dan sama sekali tidak tergantung.

  9.   Yulian kata

    Hebat! sekarang bahawa saya mengikuti kursus sistem operasi dan saya perlu menjalankan tugas dengan terminal, tutorial anda sangat membantu! terima kasih

  10.   Pablo kata

    Dijelaskan dengan sangat baik, hebat blog yang baru saya temui, saya menunjukkannya ke kegemaran. Terima kasih.

  11.   Anon kata

    Baik, itu bagus, walaupun ada kalanya mereka tidak dapat dibunuh….

  12.   dcoy kata

    pkill -9

    1.    dcoy kata

      pkill -9 "nama proses"
      dalam komen sebelumnya saya meletakkan «» tetapi ia tidak keluar xD

  13.   paling baik kata

    selamat malam, saya mempunyai masa untuk membaca suapan anda dan hari ini saya memutuskan untuk mencuba perintah ini ps ax | grep chrome | grep -v grep | awk '{cetak $ 1}' | xargs kill dan saya mendapat ralat kill berikut: tidak dapat mencari proses "?" dengan sedikit pengalaman yang saya miliki di bash saya memutuskan untuk membuat beberapa pengubahsuaian dan pada akhirnya saya ditinggalkan dengan ps -A | grep c | grep -v grep | awk '{cetak $ 1}' | xargs kill kerana ps -A digunakan untuk menunjukkan semua proses secara ringkas dan anomali kedua adalah bahawa ia melemparkan TTY «?» dan ini berjaya untuk saya terima kasih banyak saya sangat suka blog anda, salam

  14.   Michael kata

    Terima kasih, anda tidak dapat membayangkan jumlah masalah yang baru anda selesaikan dengan perintah ini.

    Salam !!

  15.   emel kata

    TERIMA KASIH !!!!

  16.   Arturo kata

    Pos yang sangat baik. Apa yang saya cari dan tidak tahu bagaimana melakukannya, dan penjelasannya sangat bagus.

    Greetings.