I do know http://packages.debian.org/ provide the search facillity.
The problem is how could I search the packages with just command line?
Super User is a question and answer site for computer enthusiasts and power users. It only takes a minute to sign up.Sign up to join this community
apt-cache search command will return all packages that have
name in the package name or description:
apt-cache search name
Once you have a package name, you can get more detailed information on the package using the
apt-cache show and
apt-cache showpkg commands.
apt-cache show package_name apt-cache showpkg package_name
While both aptitude and apt-cache do the job well, there is a new kid on the block; axi-cache.
axi-cache works a lot like apt-cache, but on steroids. ;) It uses a sophisticated tool called xapian to build an index and then queries that index. It bundles something called http://wiki.debian.org/Debtags>debtags in with the index as well. Debtags allow you to create little tags that stick to deb packages. Suffice it to say that debtags are a powerful way to search for packages and tools to get stuff done.
For example, if you wanted a WebDAV client in Debian you could do this;
axi-cache search protocol::webdav
That search produces this on my machine;
axi-cache search protocol::webdav 14 results found. Results 1-14: 100% gstreamer0.10-gnomevfs - GStreamer plugin for GnomeVFS 100% sitecopy - A program for managing a WWW site via FTP, DAV or HTTP 100% davfs2 - mount a WebDAV resource as a regular file system 100% blosxom - light, feature-packed weblog app with plugin extensibility 100% lighttpd-mod-webdav - WebDAV module for lighttpd 100% nd - small command line interface to WebDAV servers 100% cadaver - command-line WebDAV client 100% subversion-tools - Assorted tools related to Subversion 100% libapache2-svn - Subversion server modules for Apache 100% libcommons-vfs-java - Java API for accessing various filesystems 100% subversion - Advanced version control system 100% eldav - interface to the WebDAV servers for Emacs. 100% libhttp-dav-perl - WebDAV client library for Perl, and "dave" CLI client 100% fusedav - filesystem to mount WebDAV shares More terms: webdav servers authoring versioning files subversion remote More tags: network::client protocol::http role::program implemented-in::c interface::commandline protocol::ftp devel::rcs
As you can see a lot of tools show up which is quite handy if you're not really sure what you are looking for but you know for example the problem area you're looking at.