Какая команда оболочки может найти все пакеты, предоставляющие определенный полный виртуальный пакет? - PullRequest
6 голосов
/ 29 июля 2010

Как видно из заголовка, я хочу получить список всех пакетов, которые предоставляют определенный виртуальный пакет.Один из способов сделать это - написать сценарий оболочки, который анализирует весь вывод

apt-cache search -f .*

и выводит все пакеты, в которых есть виртуальный пакет, в разделе обеспечивает.Проблема этого подхода заключается в том, что для его выполнения требуется очень много времени.Я предполагаю, что должна быть простая команда, которая делает это эффективным способом, но которую я не смог найти.

Ответы [ 2 ]

8 голосов
/ 11 декабря 2011

Если у вас установлен aptitude, он предоставляет множество шаблонов , которые можно использовать для поиска.

В частности, для случая поиска пакетов, которые предоставляют данный виртуальный пакетимя, вы можете использовать это:

$ aptitude search '?provides(pattern)'

где шаблон может быть установлен на имя виртуального пакета, который вы ищете.

Например:

$ aptitude search -F %p '?provides(mail-reader)'
balsa                                                                           
bsd-mailx                                                                       
claws-mail                                                                      
cone                                                                            
emacs                                                                           
emacs23                                                                         
emacs23-lucid                                                                   
emacs23-nox                                                                     
evolution                                                                       
gnus                                                                            
im                                                                              
jed                                                                             
kmail                                                                           
kmail-mobile                                                                    
mailutils                                                                       
mailutils-mh                                                                    
mew                                                                             
mew-beta                                                                        
mew-beta-bin                                                                    
mew-bin                                                                         
mutt                                                                            
nmh                                                                             
opera                                                                           
opera-next                                                                      
seamonkey-mailnews                                                              
sylpheed                                                                        
thunderbird                                                                     
tkrat                                                                           
vm                                                                              
wl                                                                              
wl-beta                                                                         
xemacs21-mule                                                                   
xemacs21-mule-canna-wnn                                                         
xemacs21-nomule                                                                 
xjed                                                                            
xul-ext-lightning  
1 голос
/ 29 июля 2010

Посмотрите, подойдет ли dpkg-query к вашим потребностям.

...