google-chrome
Kullanmanın yanı sıra terminalden ayrılmanın bir yolu var mı killall google-chrome
?
Öldürmeden bir senaryodan kapatmayı istiyorum.
google-chrome
Kullanmanın yanı sıra terminalden ayrılmanın bir yolu var mı killall google-chrome
?
Öldürmeden bir senaryodan kapatmayı istiyorum.
Yanıtlar:
Belki wmctrl
biraz yardım olabilir. -c
Bir pencereyi incelikle kapatan seçeneği kullanabilirsiniz :
wmctrl -c chrome
Dize chrome
, pencere başlıklarına karşı eşleştirilir. Bazı mesajlar açılırsa pencerenin kapanmayabileceğini unutmayın (örn. Açık sekmeler varken).
wmctrl
.
pkill -o chrome
Yine de yapar.
Bu komut, tüm pencere yöneticilerinde chrome işlem ağacını zarifçe çıkar:
pkill --oldest chrome
veya eğer tercih ederseniz:
/usr/bin/pkill --oldest --signal TERM -f chrome
Detaylar:
SIGTERM
--oldest
SIGTERM
sinyal olarak aynıdır 15
, dolayısıyla --signal TERM
bu yana, ya da sadece dışarıda bırakın SIGTERM
varsayılan sinyalidirwmctrl
Unity ve diğerleriyle çalışır ancak tüm pencere yöneticileriyle çalışmazwmctrl -c
bir seferde bir pencereyi kapatır, böylece tüm krom pencereleri kapatmak için buna benzer bir şeye ihtiyacınız olur: while wmctrl -c 'Google Chrome'; do sleep 0.2; done
--oldest
Bir seçenek olmadığı için eski bir pkill sürümünü kullandığımı varsayıyorum : using -o
works.
-f
pkill için argüman benim için çalışmıyor. Chrome kelimesini komut satırlarında barındıran root olarak çalışan başka işlemler de var, bu yüzden izin verilmedi. Olmadan -f
, yine de mükemmel çalışıyor.
Bu benim için çalışıyor:
killall --quiet --signal 15 -- chrome
Kodda okunabilir olması için oldukça ayrıntılı bir komut kullandığımı unutmayın, elbette ayrıca:
killall -q -15 chrome
Açık Mac OS X
, bunun yerine kullanın
pkill -a -i "Google Chrome"
Yaptığı şey bir Google Chrome işlemini aramak ve ana işlemlerinin tümünü de öldürmektir.
Pkill El Kitabından
-a Include process ancestors in the match list. By default, the
current pgrep or pkill process and all of its ancestors are
excluded (unless -v is used).
-i Ignore case distinctions in both the process table and the
supplied pattern.
@ Keith-cascio'nun cevabına göre , bunun yerine en eski süreci öldürmeyi deneyebilirsiniz. Bunun benim için işe yaramadığını unutmayın.
pkill -o -i "Google Chrome"
Deneyin:
kill -3 <pid_of_chrome>
Bu, pencere yöneticinize bağlı olarak, kapatılması istendiğinde genellikle ne gönderileceği olacak olan, kroma bir "ÇIKIŞ" sinyali gönderir.
kill
veya killall
Chrome kazasında olarak görüyor nerede ve geri soran.
SIGQUIT
kapatılması istendiğinde genellikle uygulamalara gönderilmez (Bunu yapan hiçbir WM bilmiyorum). WM_DELETE_WINDOW
standarttır.
kill -15 <pid_of_chrome>
şeyi yaptı. Ancak, google-chrome
birden fazla ilaç var ve doğru olanı elde etmeye çalışan birkaç kişi aldı.