Bir pakette hangi komutların yüklendiğini nasıl bilebilirim?


11

Belirli bir paketle yüklenmiş komutların listesini nasıl edinebilirim?

Örneğin, Chromium'u yüklersem şimdi ne yazmalıyım? Veya yüklersem moreutilshangi komutların yüklendiğini nasıl bilebilirim?

Yanıtlar:


14

Kısa cevap:

dpkg -L packagename | grep 'bin/'

Uzun cevap:

Bir pakete yüklenen (diyelim moreutils) tüm dosyaların bir listesini almak için şu komutu çalıştırın:

dpkg -L moreutils

Şimdi, tek yapmamız gereken yoldaki yürütülebilir dosyalar olanları filtrelemek. Genel olarak, komutlar yüklenir /bin, /sbin, /usr/binve /usr/sbinbiz sadece bu kalıpları eşleşebilir:

dpkg -L moreutils | grep -e '^/bin/' -e '^/sbin/' -e '^/usr/bin/' -e '^/usr/sbin/'

Ezberlemesi daha kolay, ancak tamamen doğru olmayan bir şey istiyorsanız, bin/bunun yerine satırları filtreleyin :

$ dpkg -L moreutils | grep 'bin/'
/usr/bin/isutf8
/usr/bin/pee
/usr/bin/errno
/usr/bin/vidir
/usr/bin/zrun
/usr/bin/lckdo
/usr/bin/ifne
/usr/bin/mispipe
/usr/bin/parallel
/usr/bin/sponge
/usr/bin/ts
/usr/bin/ifdata
/usr/bin/vipe
/usr/bin/chronic
/usr/bin/combine

Yani, bu örnekte, ben bu komutları keşfettim: isutf8, pee, errnovb


Bazı paketler yola komut yüklemez, ancak GUI uygulaması için bir simge yükler. Uygulamayı başlatan komutu bulmak istiyorsanız, yüklü .desktopdosyayı bulmanız ve ile başlayan satıra bakmanız gerekir Exec=. Örneğin:

$ dpkg -L worldofgoo | grep '\.desktop$'
/usr/share/applications/WorldOfGoo.desktop

$ grep '^Exec=' /usr/share/applications/WorldOfGoo.desktop 
Exec=/opt/WorldOfGoo/WorldOfGoo

Bu örnekte, /opt/WorldOfGoo/WorldOfGooTerminal'den World Of Goo'yu başlatmak için koşmam gerektiğini keşfettim .


1
grepBölüm tüm modelleri ile sona fikrine dayanmaktadır hafifçe konsolide edilebilir bin/. (Ve yol adlarını dpkg -L moreutils | grep -e '/[s]*bin/' | sed -r 's/.*bin\/(.*)$/\1/'
kesmeye dayanamadım

@lgarzo, sen son 6 yılda bu öğrenmiş olabilir ama grep ile ve sadece dağıtım olanağı dpkg -L chromium-browser | sed -rn 's/.*bin\/(.*)$/\1/p'olarak -nve pyalnızca değişmiş hatları basılacak neden olur. Saniyenin 60 / 1000'ini kurtarmak!
pbhj
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.