With yum it was simple: yum list *xxx* but this does not work with apt-get.

How can I do a search like this?

Also, how do I see what package provides a specific command?


If you wish to search a specific string only in package names, you can do:

apt-cache search --names-only 'xxx'

This will return anything that contains 'xxx' in their package name.

You can also use regular expressions:

apt-cache search --names-only 'php5$'

This will return any package with their name ending in php5.

Regular expressions can also be used without the --names-only. See apt-cache(8) man page.

  • 1
    aptitude search operates in the same way and you should really be using aptitude rather than apt-get these days. – WheresAlice Jul 2 '10 at 11:38
  • kaerast, you enlightened me! aptitude is the way. Thank. You should put this as an answer instead of a comment. "aptitude search" – sorin Jul 2 '10 at 12:50

First Question: use dselect or aptitude to see/search all available packagesm, their both curses frontends to apt-get and/or dpkg

Second Question: dpkg -S <COMMAND>

It would be wise to include the whole path in your dpkg search (e.g. /bin/ls, not just ls).


An alternative is "apt-cache search"


Yet another alternative is axi-cache (in the apt-xapian-index package). It uses the xapian search engine to search through the apt archives.


Put the search query in a quotes and then use regex. For install to search whatever version of php-curl, I use;

sudo apt-cache search "php.*curl" 

which returns;

php5-curl - CURL module for php5
php-http-request2 - Provides an easy way to perform HTTP requests

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.