Tek bir komutla bir işlemi sonlandırın

Çoğu zaman bir işlemi bir terminal aracılığıyla öldürmemiz gerekir. Sürecin tam adını bilirsek (örneğin: kate) hiçbir sorunumuz yok, basit:

killall kate

Bizim için sorunu çözüyor ... ama sürecin tam adını bilmiyorsak ne olur?

Bu durumlarda, tüm süreçleri şu şekilde listelemeliyiz: ps yardımcı aşağıdaki ekran görüntüsünde gösterildiği gibi:


Sonra sürecin PID'sini arayın, bu durumda bu durumda PID'yi ararız. kate:


O zamana kadar şunları yapın:

kill 3808

Ve işte, işte süreci öldürüyoruz.

Şey ... tek bir satırda işlemi arayabilir (tam adını bilmeye gerek kalmadan), PID'sini bulabilir ve ayrıca onu öldürebiliriz:
ps ax | grep kat | grep -v grep | awk '{print $2}' | xargs kill

Gördüğün gibi:

  1. Süreçleri listeleriz (ps yardımcı)
  2. Tam veya tam adını bilmiyoruz kate (hey, o kate editörü veya onun gibi bir şey olabilir) bu nedenle yalnızca kat (grep kat)
  3. Ancak kat ile ilgili iki işlemi sadece bu filtreyi kullanırsak, biri kate işlemi, diğeri ise filtreleme için etkinleştirdiğimiz süreçtir, anlamayı bitirebilmeniz için size bir ekran görüntüsü bırakıyorum: (2 satır, yani 2 işlem olduğuna dikkat edin)

  4. Daha önce anlatılanlardan kaçınmak için başka bir filtre (grep -v grep). Bunun tam tersini yapacağız ... grep kullanarak filtrelersek, yalnızca filtreyle eşleşmeleri gösterecektir. grep -v Size eşleşmeleri GÖSTERMEMENİZ, neyin uyuşmadığını göstermeniz talimatını veriyoruz. Size sonucun şu ana kadar nasıl olacağının ekran görüntüsünü gösteriyorum: (Şimdi sadece Kate'in işleminin göründüğüne dikkat edin)

  5. Öldürmek istediğimiz süreç zaten izole edilmiş durumda, şimdi sadece 2. sayı olan PID'sini çıkarmamız gerekiyor, yani 4062. Ve PID 2. sütunda (1. sütun, UID 1000 olan kullanıcıyı içerir), yani awk kullanarak, 2. sütunda bulduğunu yalnızca bu satırdan gösterdiğini söyleyebiliriz (awk '{baskı $ 2}'). Bu bize sadece işlem numarasını gösterir, yani terminalde sadece PID görünecektir.
  6. Ama PID'yi göstermek istemiyoruz, istediğimiz o PID ile süreci öldürmek ... yani bunu yapacağız, şimdiye kadar sahip olduğumuz şeyi komuta geçireceğiz öldürmek ve hazır (xargs öldürür)
  7. Bu xargs ne anlama geliyor? ... basit, bu durumda PID'yi sadece borularla öldürmek için geçiremeyiz ( | ), bu yeterli değil, bu yüzden xargs (değerlerin veya verilerin geçirilmesine ve ardından bunların çalıştırılmasına veya sonlandırılmasına izin veren) işi bitirmemizi sağlayacak olan şeydir.

Ve burada biter 😀

Evet ... Bunun biraz karmaşık göründüğünü biliyorum, tam da bu yüzden elimden gelenin en iyisini açıklamaya çalıştım.

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 😉

Her neyse ... Umarım ilginç bulmuşsundur, nasıl kullanılacağını öğrenmeye devam ediyorum awk bu gerçekten harika hehe.

selamlar


34 yorum, sizinkini bırakın

Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.

  1.   Ezitoc dijo

    Doğru, awk benim için çok faydalı oldu ve yapılandırılmış metin dosyalarını değiştirmesi gereken herkesin onu nasıl kullanacağını bilmesinin şiddetle tavsiye edildiğini düşünüyorum.

    Sadece bir sorum var (girişle ilgisi yok: D), ekran görüntüsünün bir bölümünü vurgulamanıza izin veren bu bulanıklık efektini nasıl (ve hangi programla) yaptınız?

    Selamlar.

    1.    Ezitoc dijo

      Test yapmak bu formattan ise çalışıyor ve değilse birisi bana bunu nasıl yapacağımı söyledi

      Çok teşekkür ederim.

    2.    KZKG ^ Gaara dijo

      Peki evet ... awk HAHAHAHA ile nasıl çalışılacağını bildiğim için Linux'u yeniden keşfettim.
      Etki ve benzeri hakkında hiçbir şey ... bu sadece Gimp 😀

      Vurgulamak istediğim bölümü seçiyorum, [Ctrl] + [X] ile kesip yeni bir katman olarak yapıştırıyorum, ardından alt katmanı (opak yapmak istediğim) seçip Filtreler- » Gauss (veya hehe ne yazarsan yaz) ve işte.
      Şimdi, karanlık efekti vermek için, sadece yeni bir katman (beyaz arka plan) oluşturuyorum ve zaten sahip olduğum bu ikisi arasına yerleştiriyorum, ona siyah rengi veriyorum ve şeffaflık çubuğunda (sağ üst köşede) nereye taşıyorum İstenilen etkiyi elde ederim.

      Selamlar ve yorum için teşekkürler 🙂

      1.    Roberto Evrimleşen Santana dijo

        Büyük!!

  2.   Kaynak Kılavuzu dijo

    İşlem, görünür bir programdan geliyorsa, yazmaktan daha rahat bir şey olamaz. Xkill konsolda, öldürmek için programa tıklayın ve işte.

    1.    KZKG ^ Gaara dijo

      öldürmek için programa tıklayın
      hehe evet ... bu bir GUI'ye sahip olduğunuzu varsayıyor hehe.

      1.    Kaynak Kılavuzu dijo

        Doğru, bu yüzden "eğer süreç görünür bir programdan geliyorsa" dedim.

        1.    Windousico dijo

          "X" işaretli düğmeye tıklamak daha kolaydır. GNOME Kabuğunda hala bu düğme var değil mi? :-D.

          1.    Kaynak Kılavuzu dijo

            Program donmuşsa (bu, sürecini sonlandırmanızın ana nedeni budur), ne kadar basarsanız basın bu düğmenin yanıt vermemesi mantıklıdır.

            Sanırım GNOME Shell yakında onu kaldıracak, böylece pencereleri Windows 8'deki gibi ekranın altına sürükleyerek kapatmanın dokunsal harikasını görebiliyorsunuz. Geniş ekran monitörlerde bunun harika bir egzersiz olduğunu söylemeye gerek yok.

          2.    Windousico dijo

            Şimdi anlıyorum. Bu durumda Control + Alt + Esc (KDE'de) tercih ederim.

            Yeni GNOME Kabuğu önizlemelerini görmek için sabırsızlanıyorum, gerçek bir zevk.

  3.   uygun dijo

    Bu aynı şeyi yapar ama daha az yazılır.
    Bu durumda yaprak pedini örnek olarak aldım, bu yüzden yaprak grep olarak görünüyor
    ps -e | grep leaf | awk '{print $1}' | xargs kill

    selamlar

  4.   Sys dijo

    Vay be! Oğlum, bir şey için "pgrep" olan "pgrep kat" ı çalıştırmayı dene.

    Ve "man pgrep" i yürütmek için. Ve bazen "pidof" size yardımcı olabilen "man pidof".

    Ve «ps aux | grep [k] at ", yorum yaptığınız" filtreleme için etkinleştirdiğimiz işlem "sonucunda geri dönmeyecek, böylece işinizden tasarruf etmenizi sağlayacaktır.

    Saludos ¡!

    1.    Sys dijo

      Oh, ve aradığınız şeyi yapan "pkill". Örneğin: "pkill kat".

    2.    KZKG ^ Gaara dijo

      Oh, ilginç ... PGrep'i bilmiyordum 🙂
      İpucu için teşekkürler 😀

      1.    Sys dijo

        Size ve yazılarınıza teşekkürler.

        Bu arada, içeri https://flossblog.wordpress.com/2009/11/11/truco-del-dia-excluir-al-proceso-grep-en-la-salida-de-ps-aux/ «ps aux | gibi komutları kullanma tekniği hakkında yorum yapın grep [n] program_name ", orada benden daha iyi açıklıyorlar.

        Saludos ¡!

        1.    KZKG ^ Gaara dijo

          Bağlantı için teşekkürler 😀
          Eso es lo genial de que exista DesdeLinux… que no importa si eres usuario, redactor o admin, siempre todos aprendemos cosas nuevas 🙂

          Selamlar ve tekrar teşekkürler arkadaşım.

  5.   Koste dijo

    Zamanınız ve özveriniz için hepinize çok teşekkür ederim, bu siteyi günde birkaç kez ziyaret etmeye ve okumaya değer kılıyor.

    Tekrar teşekkürler.

  6.   Bay Linux. dijo

    KZKG ^ Gaara neredeyse her zaman aynıdır, bu tür ipuçlarına gelince, aynı şeyi basit bir komutla yapan başka bir kişi vardır. Ama onu tebrik ediyorum, sürekli katkıda bulunuyor.

    1.    KZKG ^ Gaara dijo

      hehe evet… X osa'nın nasıl yapıldığını biliyorum ve buraya gelip yöntemi paylaşıyorum, ama sonra aynı şeyi elde etmenin daha basit bir yolunu paylaşıyorlar hahaha, ama bununla hepimiz kazanıyoruz, değil mi? 😀

      1.    Truko22 dijo

        Doğru 0 /

      2.    Kaynak Kılavuzu dijo

        Hahaha, her zaman en karmaşık yoldan gidersin. 😀

        1.    KZKG ^ Gaara dijo

          HAHAHA evet, hep düşünmüşümdür: «Bunu zor yoldan nasıl yapacağımı bilirsem, o zaman sorunsuz bir şekilde nasıl yapılacağını öğrenirim.»Ve… tam tersi aynı hahaha ile çalışmaz.

  7.   Oscar dijo

    Sorun, benzer isimli iki işlemimiz olsaydı olurdu.
    Örneğin, bir kate süreci ve başka bir işlem ... mmm ... diyelim ki kater xD
    Böyle bir emirle ikisini de öldürürüz, değil mi?

    1.    KZKG ^ Gaara dijo

      Peki evet, bu olur 🙂

  8.   Truko22 dijo

    TT zavallı Kate. KDE'de xkill kullanıyorum, "ctrl + alt + esc" ile hızlıca başlatılıyor veya "ctrl + Esc" ile "Sistem Aktiviteleri" ni açıp grafiksel olarak yapıyorum. Kararlı debian'a sahip bir ev sunucum olmasına ve bu hiç kilitlenmemesine rağmen, şimdi terminal aracılığıyla bu prosedür öğrenilmelidir.

  9.   yulian dijo

    Harika! şu anda işletim sistemleri kursunu alıyorum ve terminal ile görevler yapmam gerekiyor, eğitiminiz çok yardımcı oldu! Teşekkürler

  10.   pablo dijo

    Çok iyi açıklanmış, yeni tanıştığım blog harika, favorilere işaret ediyorum. Teşekkür ederim.

  11.   Anon dijo

    Öldürülemeyecekleri zamanlar olsa da, bu iyi….

  12.   dcoy dijo

    pkill -9

    1.    dcoy dijo

      pkill -9 "işlem adı"
      önceki yorumda "» yazdım ama xD çıkmadı

  13.   itobest dijo

    iyi geceler, beslemenizi okurken zamanım var ve bugün bu komutu denemeye karar verdim ps ax | grep chrome | grep -v grep | awk '{print $ 1}' | xargs kill ve şu kill hatasını alıyorum: "?" işlemi bulunamıyor Bash'deki küçük deneyimimle bazı değişiklikler yapmaya karar verdim ve sonunda ps -A | grep c | grep -v grep | awk '{print $ 1}' | xargs kill, ps -A'nın tüm süreçleri özet halinde göstermek için kullanıldığı ve ikinci anormalliğin TTY "?" ve benim için çalıştı çok teşekkür ederim bloğunu gerçekten beğendim, selamlar

  14.   Michael dijo

    Teşekkürler compa, bu komutla benim için çözdüğünüz sorunların miktarını hayal bile edemezsiniz.

    Selamlar!

  15.   e-posta dijo

    TEŞEKKÜRLER !!!!

  16.   Arturo dijo

    Mükemmel gönderi. Tam aradığım şey ve nasıl yapılacağını bilmiyordum ve açıklama çok iyiydi.

    Selamlar.