Linux istifadə edərək prosesləri öldürmək

Çox vaxt proqramın öz vasitəsi ilə sona çatmasını, yaxud bir qrafik tətbiqi olsa, müvafiq menyudan istifadə etməklə və ya küncdə xaç istifadə edərək istəyə bilərsiniz.

Hər dəfə tez-tez bir proqram asılacaq, bu halda onu öldürmək üçün bir üsula ehtiyacınız olacaq. Artıq işləməyinizə ehtiyacınız olmadığı bir proqramı da öldürmək istəyə bilərsiniz.

Bu təlimatda sisteminizdə çalışan eyni proqramın bütün versiyasını öldürmək üçün bir üsul təqdim olunur.

Bu killall əmrini necə istifadə etmək olar

The killall əmri adından bütün prosesləri öldürür. Ki, killall əmrini işləyən eyni proqramın üç versiyası varsa, üçü də öldürəcəkdir.

Məsələn, belə bir görüntü görüntüleyicisini kiçik bir proqram açın. İndi eyni görüntü görüntüleyicisinin başqa bir kopyasını açın. Mənim nümunə üçün Göz Of Gnome bir klon olan Xviewer seçmişəm.

İndi terminal açın və aşağıdakı komanda yazın:

killall

Məsələn Xviewer bütün nümunələrini öldürmək üçün aşağıdakıları yazın:

killall xviewer

İndi öldürmək üçün seçdiyiniz proqramın hər ikisi indi bağlanacaq.

Həqiqətli prosesi öldürün

killall qəribə nəticələr yarada bilər. Budur, bir nedeni. 15 dən çox simvoldan ibarət olan bir əmr adınız varsa, killall əmri yalnız ilk 15 simvol üzərində işləyəcəkdir. Ona görə də eyni ilk 15 simvolu paylaşan iki proqramınız varsa, həm də proqramı ləğv etsəniz, sadəcə birinizi öldürmək istəyirsiz.

Bunun ətrafında getmək üçün yalnız dəqiq adı uyğun faylları öldürəcək olan aşağıdakı keçidləri təyin edə bilərsiniz.

killall -e

Proqramları öldürərkən işi görməyin

Killall əmrini verdiyiniz proqramın adını nəzərə almamaq üçün aşağıdakı əmrləri istifadə edin:

öldürmək -I
killall --ignore-halda

Eyni qrupda bütün proqramları öldürün

Aşağıdakı kimi əmr etdiyinizdə iki proses yaradır:

ps-f | | daha az

Bir komanda sisteminizdə işləyən proseslərin hamısını siyahıya alan ps mənbəyidir və çıxış daha az əmrə boru verilir.

Hər iki proqram bash olan eyni qrupa aiddir.

Hər iki proqramı eyni anda öldürmək üçün aşağıdakı əmri çalıştırabilirsiniz:

killall -g

Məsələn bir bash qabığında çalışan bütün əmrləri öldürmək üçün aşağıdakıları yerinə yetirin:

killall -g bash

Yeri gəlmişkən, bütün çalışan qrupların siyahısı aşağıdakı komandanı işlədir:

ps -g

Proqramları öldürmədən əvvəl təsdiqləyin

Aydındır ki, killall əmri olduqca güclü bir əmrdir və səhv prosesləri təsadüfən öldürmək istəmirsiniz.

Aşağıdakı keçiddən istifadə edərək, hər bir prosesdən əvvəl əmin olduğunuzdan soruşulacaqsınız.

killall -i

Vaxtın müəyyən bir miqdarı üçün işlədilən prosesləri öldürün

Bir proqramı hazırladığınızı düşünün və bunu ümid etdiyinizdən çox daha uzun sürür.

Komandanı öldürə bilərsiniz:

killall -o h4

Yuxarıdakı əmrdə saat saat dayanır.

Aşağıdakılardan birini də göstərə bilərsiniz:

Alternativ olaraq, yalnız çalıştırmaya başlayan komutları öldürmək istəyirsinizsə, aşağıdakı keçidi istifadə edə bilərsiniz:

killall -y h4

Bu dəfə killall komandası 4 saatdan az müddətdə çalışan bütün proqramları öldürəcək.

Bir müddət öldürüldükdə mənə xəbər verməyin

Əgər cəhd etməsəniz və çalışmadığınız bir proqramı öldürsəniz, aşağıdakı səhv alırsınız:

proqram adı: heç bir proses tapılmadı

Əgər prosesin tapılmadığını bildirmək istəmirsinizsə, aşağıdakı əmrləri istifadə edin:

killall -q

Daimi ifadələrdən istifadə

Bir proqramın və ya əmrin adını ifadə etmək əvəzinə, normal ifadəyə uyğun olan bütün proseslər killall əmri ilə bağlıdır ki, müntəzəm ifadə verə bilərsiniz.

Normal ifadəni istifadə etmək üçün aşağıdakı əmrləri istifadə edin:

killall -r

A İstifadəçi Göstərmək üçün Proqramları Öldür

Müəyyən bir istifadəçi tərəfindən idarə olunan bir proqramı öldürmək istəyirsinizsə, aşağıdakı əmri göstərə bilərsiniz:

killall -u

Müəyyən bir istifadəçi üçün bütün prosesləri öldürmək istəyirsəniz, proqram adını ata bilərsiniz.

Bitirmək üçün öldürmək üçün gözləyin

Standart olaraq killall işə salındıqda terminala geri qayıdacaqsınız, lakin killall-ı terminal pəncərəsinə qaytarmadan əvvəl göstərilən bütün proseslər bağlanılmayana qədər gözləməyə məcbur edə bilərsiniz.

Bunu etmək üçün aşağıdakı əmri çalıştırın:

killall -w

Proqram ölməzsə, killall da davam edəcək.

Sinyallerin siqnalları

Silmə komandası siqnalı olaraq SIGTERM siqnalını yaxınlaşdırmaq üçün proqramlara göndərir və bu proqramları öldürmək üçün ən təmiz üsuldur.

Killall əmrini istifadə edərək göndərə biləcəyiniz digər siqnallar var və bunları aşağıdakı əmri istifadə edərək siyahıya ala bilərsiniz:

killall -l

Geri dönən siyahı belə bir şey olacaq:

Bu siyahı çox uzun. Bu siqnalların nə demək olduğunu oxumaq üçün aşağıdakı əmrləri yerinə yetirin:

adam 7 sinyali

Ümumiyyətlə, SIGTERM-in seçimini istifadə etməlisiniz, amma proqram ölmədən imtina etməsə, SIGKILL-ı istifadə edə bilərsiniz ki, bu da proqramı qeyri-müəyyən şəkildə bağlamağa məcburdur.

Proqramı öldürmək üçün digər yollar

Bağlı kitabçada vurğulanıldığı kimi Linux proqramını öldürmək üçün 5 yol var.

Bununla birlikdə buradan keçmək üçün səy sərf etmək üçün bu komutların nə olduğunu göstərən bir bölüm bu killall üzərindən bu əmrləri istifadə edə bilərsiniz.

Birincisi öldürmək əmri. Gördüyünüz kimi killall əmri eyni proqramın bütün versiyalarını öldürməkdə böyükdür. Killer əmri bir müddətdə bir prosesi öldürmək üçün nəzərdə tutulmuşdur və buna görə daha çox hədəflənir.

Kill əmrini yerinə yetirmək üçün öldürmək istəyən prosesin proses kimliyini bilmək lazımdır. Bunun üçün ps komandanızı istifadə edə bilərsiniz.

Məsələn, Firefox'un çalışan versiyasını tapmaq üçün aşağıdakı əmri çalıştırabilirsiniz:

ps-f | | grep firefox

Sonda / usr / lib / firefox / firefox komandası ilə bir sıra məlumatlar görəcəksiniz. Xəttin başında, istifadəçi kimliğinizdən sonra istifadəçi identifikatorunu və nömrənizi görürsünüz.

Prosedur ID istifadə edərək, aşağıdakı əmri çalıştıraraq Firefox'u öldürə bilərsiniz:

kill -9

Proqramı öldürmək üçün başqa bir üsul xkill əmrini istifadə etməkdir. Bu, ümumiyyətlə səhvsiz qrafik tətbiqləri öldürmək üçün istifadə olunur.

Firefox kimi bir proqramı öldürmək üçün terminal açın və aşağıdakı əmrləri yerinə yetirin:

xkill

İmleç artıq böyük bir ağ xaça keçəcək. İmleci öldürmək istəyən pəncərənin üzərinə sürüşdürün və sol siçan düyməsini basın. Proqram dərhal çıxacaq.

Bir prosesi öldürmək üçün başqa bir üsul Linux üst komandasını istifadə etməkdir. Üst komanda sisteminizdə çalışan bütün prosesləri siyahıya alır.

Bir prosesi öldürmək üçün lazım olan bütün "k" düyməsini basın və öldürmək istədiyiniz proqramın proses kimliyini daxil edin.

Əvvəllər bu bölmədə öldürmək əmri və ps əmrini istifadə edərək prosesi tapmaq və sonra öldürmə əmri ilə prosesi öldürməyi tələb etdi.

Hər hansı bir yolla bu ən sadə variant deyil.

Bir şey üçün, ps komutu ehtiyacınız olmayan bir çox məlumatları qaytarır. İstədiyiniz proses kimlikdir. Aşağıdakı əmri çalıştıraraq proses kimliyini daha sadələşdirə bilərsiniz:

pgrep firefox

Yuxarıda göstərilən əmrin nəticəsi sadəcə Firefox prosesinin kimliyidir. İndi öldürmək əmrini aşağıdakı kimi idarə edə bilərsiniz:

öldürmək

(Değiştir , pgrep tərəfindən döndürülen gerçek işlem kimliği ile değiştirin).

Ancaq sadəcə proqram adını aşağıdakı kimi təqdim etmək daha asandır :

pkill firefox

Nəhayət, Ubuntu ilə təchiz olunmuş "Sistem Monitor" adlı bir qrafik alətdən istifadə edə bilərsiniz. "Sistem Monitoru" işlətmək üçün axtarış düyməsinə super düyməni basın (Windows-dakı ən çox kompüterdə) və "sysmon" yazın. Sistem izləyicisi simgesi göründükdə, üzərinə basın.

Sistem monitorı proseslərin siyahısını göstərir. Proqramı təmiz bir şəkildə sona çatdırmaq üçün onu seçin və ekranın altındakı bitmə düyməsini basın (və ya CTRL və E düyməsini basın). Bu işə uğursuzsa sağ klikləyin və öldürmək istəyən "Kill" ya da CTRL və K düyməsini basın.