用一個命令殺死一個進程

很多時候,我們需要通過終端終止進程。 如果我們知道流程的全名(例如: 凱特),我們沒有問題,很簡單:

killall kate

它為我們解決了問題……但是,如果我們不知道流程的確切名稱會怎樣?

在這種情況下,我們必須列出所有 ps aux 如以下屏幕截圖所示:


然後尋找過程的PID,在這種情況下,我們尋找 凱特:


屆時請執行以下操作:

kill 3808

瞧,我們在那裡終止了這一過程。

好吧...在一行中,我們可以搜索該進程(無需知道其全名),找出其PID並殺死它:
ps ax | grep kat | grep -v grep | awk '{print $2}' | xargs kill

如你看到的:

  1. 我們列出了流程(ps aux)
  2. 我們不知道的完整或確切名稱 凱特 (嘿,可能是凱特編輯或類似的人),因此我們僅按 (格雷普·凱)
  3. 但是,如果僅使用此過濾器,我們將獲得兩個與kat相關的過程,一個是kate過程,另一個是我們激活的用於過濾的過程,我為您留下了屏幕截圖,以便您可以完全理解:請注意,有2行,即2個進程)

  4. 為了避免之前的解釋,我們製作了另一個過濾器(grep -v grep)。 我們將做相反的事情...如果我們使用grep進行過濾,則只會顯示與過濾器匹配的內容, grep -v 我們指示您不要顯示匹配項,而是顯示不匹配的項。 我向您展示了目前效果如何的屏幕截圖:(請注意,現在僅出現kate的進程)

  5. 好了,我們已經隔離了要終止的進程,現在只需要提取其PID為第二個數字,即, 4062。 PID位於第二列第一列包含UID為1的用戶),因此使用awk可以說,它僅顯示該行在第二列中找到的內容(awk'{print $ 2}')。 這只會向我們顯示進程號,即只有PID將出現在終端中。
  6. 但是我們不想顯示PID,我們想要的是用該PID終止進程……所以我們將這樣做,我們將到目前為止的內容傳遞給命令 準備好了xargs殺死)
  7. xargs是什麼意思? ...很簡單,在這種情況下,我們無法傳遞PID來僅使用管道殺死( | ),這根本不夠,所以xargs(允許傳遞值或數據然後執行或殺死它們)才可以使我們完成工作。

到此為止😀

是的...我知道這似乎有些複雜,這就是為什麼我盡我所能盡力解釋的原因。

我知道可能很少人需要這個命令,但本文的目的與 DesdeLinux,每天教他們一些新東西,總是試圖讓他們擺脫對 Linux 的恐懼......而且,就我個人而言,我也希望他們能夠毫無恐懼地學習使用終端😉

無論如何...我希望您發現它很有趣,我一直在學習如何使用 AWK 真的很棒。

問候


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   依齊托克 他說:

    的確,awk對我非常有用,我認為強烈建議需要操縱結構化文本文件的任何人知道如何使用它。

    我只是有一個問題(與輸入無關:D),您是如何(以及與哪個程序一起)進行那種模糊效果的,從而可以突出顯示屏幕截圖的一部分?

    問候。

    1.    依齊托克 他說:

      測驗 如果這是從格式 它有效,如果沒有 有人告訴我怎麼做

      非常感謝。

    2.    KZKG ^ Gaara 他說:

      好吧,是的。我知道如何與awk HAHAHAHA一起使用時,我已經重新發現了Linux。
      關於效果等等,僅此而已...只是Gimp😀

      我選擇要突出顯示的部分,用[Ctrl] + [X]剪切並將其粘貼為新圖層,然後選擇較低的圖層(我要使其不透明的那一層),然後轉到Filters-»Gaussian(或您編寫的任何內容)呵呵)
      現在,要使其具有深色效果,我只需創建一個新層(白色背景)並將其放置在我已經擁有的這兩個層之間,將其賦予黑色,並在透明度欄中(右上角)將其移至達到所需效果的位置。

      問候和感謝您的評論🙂

      1.    羅伯托·桑塔納 他說:

        大!!

  2.   曼努埃爾·德拉·富恩特 他說:

    如果該過程來自可見的程序,那就比鍵入更舒服了 殺人 在控制台上,單擊要殺死的程序,然後瞧。

    1.    KZKG ^ Gaara 他說:

      點擊該程序殺死
      呵呵...那是假設你有一個GUI呵呵。

      1.    曼努埃爾·德拉·富恩特 他說:

        沒錯,這就是為什麼我說“如果該過程來自可見程序”。

        1.    溫杜西科 他說:

          單擊帶有“ X”的按鈕會更容易。 GNOME Shell仍然具有該按鈕嗎? :-D

          1.    曼努埃爾·德拉·富恩特 他說:

            如果程序被凍結(這是您需要終止其進程的主要原因),則邏輯上是,無論您按多少該按鈕都不會響應。

            我認為GNOME Shell會很快將其刪除,因此您可以像在Windows 8中一樣將它們拖動到屏幕底部,從而看到關閉窗口的觸覺奇蹟。不用說,在寬屏顯示器上,這是一個了不起的練習。

          2.    溫杜西科 他說:

            我現在知道了。 在這種情況下,我更喜歡Control + Alt + Esc(在KDE中)。

            我迫不及待想看到新的GNOME Shell預覽,它們確實是一種享受。

  3.   正確 他說:

    這樣做相同,但是寫得更少。
    在這種情況下,我以leafpad為例,這就是為什麼leaf出現在grep中的原因
    ps -e | grep leaf | awk '{print $1}' | xargs kill

    問候

  4.   SYS 他說:

    ! 我的兒子,嘗試運行“ pgrep kat”,這是“ pgrep”的意思。

    並執行“ man pgrep”。 還有“ man pidof”,有時“ pidof”可以幫助您。

    並執行«ps aux | grep [k]位於“,它將不會返回”我們激活的過濾結果(您對此進行評論),從而節省了工作。

    您好!

    1.    SYS 他說:

      哦,還有“ pkill”,它可以滿足您的需求。 例如:“ pkill kat”。

    2.    KZKG ^ Gaara 他說:

      哦,有趣的...我不知道pgrep🙂
      謝謝小費tip

      1.    SYS 他說:

        感謝您和您的文章。

        順便說一句 https://flossblog.wordpress.com/2009/11/11/truco-del-dia-excluir-al-proceso-grep-en-la-salida-de-ps-aux/ 評論使用諸如«ps aux |命令之類的命令的技術grep [n] program_name”,他們在那裡的解釋比我更好。

        您好!

        1.    KZKG ^ Gaara 他說:

          謝謝你的鏈接😀
          這就是它存在的偉大之處。 DesdeLinux....無論您是使用者、編輯或管理員,我們都總是在學習新事物 🙂

          問候和再次感謝朋友。

  5.   科斯特 他說:

    非常感謝您的寶貴時間和奉獻精神,值得每天訪問和閱讀此站點幾次。

    再次感謝。

  6.   Linux先生。 他說:

    KZKG ^ Gaara幾乎總是一樣的,當涉及到這些技巧時,會有另一個人用一個簡單的命令來做同樣的事情。 但是我祝賀他,他一直在不斷地貢獻自己的力量。

    1.    KZKG ^ Gaara 他說:

      嘿,是的。。。我知道怎麼做X osa,我來這里分享方法,但是後來他們分享了一種更簡單的方法來實現相同的目標哈哈哈,但是有了這個,我們都贏了,對吧? 😀

      1.    特魯科22 他說:

        是的0 /

      2.    曼努埃爾·德拉·富恩特 他說:

        哈哈哈,你總是走最複雜的路。 😀

        1.    KZKG ^ Gaara 他說:

          哈哈哈是的,我一直想:如果我知道如何以困難的方式做到這一點,那麼我將知道如何以簡單的方式學習做到這一點而沒有問題。»而且…反之亦然。

  7.   奧斯卡號 他說:

    問題是如果我們有兩個名稱相似的進程。
    例如,一個kate進程,另一個... mmm進程,比如說kater xD
    有了這樣的命令,我們將殺死他們兩個,對嗎?

    1.    KZKG ^ Gaara 他說:

      是的,那會發生

  8.   特魯科22 他說:

    TT可憐的凱特。 我在KDE中使用的是xkill,它可以通過“ ctrl + alt + esc”快速啟動,也可以通過“ ctrl + Esc”打開“系統活動”並以圖形方式完成。 現在,儘管我有一個帶有穩定debian的家庭服務器,但它根本無法掛起,但是必須通過終端學習此過程。

  9.   浴簾 他說:

    大! 剛才我正在學習操作系統課程,並且需要使用終端執行任務,您的教程對您有很大的幫助! 謝謝

  10.   巴勃羅 他說:

    很好地解釋了,我剛剛遇到的博客很棒,我將其指向收藏夾。 謝謝。

  11.   不久 他說:

    好吧,雖然有些時候無法殺死他們,但這很好。

  12.   co 他說:

    殺-9

    1.    co 他說:

      pkill -9“進程名稱”
      在上一條評論中,我放入了“»”,但它並未出現在xD中

  13.   最佳 他說:

    晚安,我有時間閱讀您的供稿,今天我決定嘗試使用此命令。 grep chrome | grep -v grep | awk'{print $ 1}'| xargs kill,我遇到了以下kill錯誤:找不到進程“?” 由於我在bash上的經驗很少,因此我決定進行一些修改,最終我留下了ps -A | grep c | grep -v grep | awk'{print $ 1}'| xargs可以殺死ps -A用於以匯總方式顯示所有進程,第二個異常是它拋出了TTY«?» 對我有用,非常感謝,我非常喜歡您的博客,問候

  14.   邁克爾· 他說:

    感謝compa,您無法想像使用此命令為我解決的問題數量。

    您好!

  15.   Emalug 他說:

    謝謝 !!!!

  16.   阿圖羅 他說:

    優秀的職位。 只是我要找的東西,卻不知道該怎麼做,而且解釋很好。

    問候。