Yanıtlar:
Varolmayan programlara bağlantı veren uygulama simgelerini listelemek için aşağıdaki komutu kullanabilirsiniz:
for i in {/usr,~/.local}/share/applications/*.desktop; do which $(grep -Poh '(?<=Exec=).*?( |$)' $i) > /dev/null || echo $i; done
Paket yöneticiniz tarafından otomatik olarak temizlenmediğinden, çoğunuzun ana klasörünüzdeki özelleştirilmiş simgeler olduğunu göreceğinizden şüpheleniyorum. Bu durumda ve hepsini bir kerede çöp kutusuna atmak istiyorsanız, önceki komutun bir değişikliğini kullanabilirsiniz:
for i in ~/.local/share/applications/*.desktop; do which $(grep -Poh '(?<=Exec=).*?( |$)' $i) > /dev/null || trash $i; done
Ya da, elbette, ~/.local/share/applications/
Nautilus'a göz atın ve grafik arayüzü ile onları çöpe atın .
Başlat menüsü ile 'Uygulamalar' menüsünü kastediyorsanız, şuraya giderek düzenleyebilirsiniz: Sistem -> Tercihler -> Ana Menü.
İstediğiniz zaman giriş ekleyebilir, yeniden düzenleyebilir, düzenleyebilir ve silebilirsiniz.
Bir uygulama kaldırıldığında, yüklediği menü öğelerini kaldırmalıdır. Ve makinemde bu şekilde çalışıyor.
Farklı çalışırsa, belirli bir paketin hatası veya sisteminizdeki bir sorundur. 40'tan fazla girişinizin kaldığına inanamıyorum. Bir sorunun belirtisi olurdu.
Bu zor ama en azından problemin ne olduğunu söylemek istiyorum.
Gnome, yüklü uygulamaları / usr / share / apps dizininde .desktop ile biten dosyalarda saklar (böylece vlc programı vlc.desktop tarafından launchad edilir)
Her birinin içinde, Uygulamalar menüsünün hangi programda olmasını istediğinizi ayarlayabileceğiniz bir "Kategori" bölümü vardır. Şey: ne istediğini yapılabilir düşünüyorum tek yolu, bu .desktop ile ilgili paketin yüklü olup olmadığını soran bir bash komut dosyası kullanmaktır. değilse, bu .desktop dosyasını silin. Dosyayı sildiğinizde menüden çıkar ve uygulamanız bir kategorideyken bu dosya gösterilmez.
Her komutun (dpkg, apt-get, vb.) Paketin yüklü olmadığını söylediklerinde her zaman iyi bir çıkış döndürdüğü için bu benim kapsamımın biraz dışında, bu yüzden arama yapan uygulamanın çıkışını okumak zorundayız bir String (fi "kurulu değil"), kontrol edin ve String varsa, uygulamanın yüklü olmadığı ve .desktop'un silinebileceği anlamına gelir.
İsterseniz, klasörü (/ usr / share / apps) girebilir ve programlara karşılık gelen dosyaları tıklayabilirsiniz. Uygulamalar menüsünden kaybolacaklar. Otomatik olarak yapmak için, sanırım pistte iyi bir bash betiğine ihtiyacımız var.
Umarım bu bir şekilde yardımcı olur.
Alternatif:
@ Ændrük yanıtını takiben , yol ve alt klasörlerdeki boşlukları destekleyen benzer bir çözüm , bu, bozuk .desktop
dosyaları aramak için belirli bir klasörde veya tüm diskte kullanılabilir (kısayol)
find {/usr,~/.local,/usr/local,}/share/applications/ -name '*.desktop' | while read -r line; do which $(grep -Poh '(?<=Exec=).*?( |$)' $line) > /dev/null || echo $line; done
Tüm disk için
find / -name '*.desktop' | while read -r line; do which $(grep -Poh '(?<=Exec=).*?( |$)' $line) > /dev/null || echo $line; done
Not: Herhangi bir yöntem, silmeden önce bulunan dosyaları iki kez hatalı pozitif kontrol gösterebilir
Bu eski bir soru olabilir ama yine de aynı sorun vardı çünkü ben yine de chime gerektiğini düşündüm ama bu önerilerin hiçbiri işe yaramadı ama internette Alacarte (kolay GNOME menü düzenleme) adlı bir program bilen çok akıllı bir kişi buldum yazılım yöneticisi kullanılarak yüklenen bir program ve varsayılan olarak yükleneceği için kullanıldığından hala heyecanlıyım, ancak şimdi değil ve iyi bilinen bir program değil, ancak yazılım yöneticisi aracılığıyla hala kullanılabilir ve kullanmak o kadar kolay sadece kurtulmak istediğiniz kaldırıldı program girişini vurgulamak için tıklayın ve sağda sil tıklayın ve bitti. belki bu diğer öneriler sizin için işe yaramazsa yardımcı olacaktır