I have successfully installed some packages using the command line ‘sudo apt-get install . ‘ when I have known in advance that those packages are available. But how can I search for or get a list of what is available in the repositories?
To search for a particular package by name or description:
From the command-line, use:
where the search keyword can be all or part of a package name or any words used in its description.
For example, apt-cache search proxy includes both these packages:
Note: the list may be long, so you can pipe the output to less to make it scrollable one line or one screen at a time, i.e. apt-cache search something | less .
To get a list of ALL packages
Use Synaptic if you have X-forwarding enabled or are on a desktop
Synaptic is often a more convenient way to do this, but requires at least an X server on your end (unless you’re running a desktop environment). Install with sudo apt-get install synaptic if necessary.
Synaptic on ssh’d server via X forwarding:
Synaptic running locally on Ubuntu Desktop:
Using aptitude , apt-cache , and apt all format the output differently. (None of these require the use of sudo when searching for a package.) I prefer using apt for its readability. It highlights the package name and puts a space between the different packages. It also has [installed] listed next to each package that is already installed. Usage:
You can also use aptitude from the command line:
The apt-cache command line tool is used for searching apt software package cache. In simple words, this tool is used to search software packages, collects information of packages and also used to search for what available packages are ready for installation on Debian or Ubuntu based systems.
To find out the package name and with it description before installing, use the ‘search‘ flag. Using “search” with apt-cache will display a list of matched packages with short description. Let’s say you would like to find out description of package ‘vsftpd‘, then command would be.
The possible output would be:
To find and list down all the packages starting with ‘vsftpd‘, you could use the following command.
You may also want to run the results through a more, or even a grep. For instance:
Assuming you want to do all of this from the terminal use the following:
first I recommend you update the package index files so the list of all files in the repository you are about to create is up to date
then use “search regex” function in apt-cache where “regex” stands for Regular Expression and is the pattern given to search. For more info about search patterns you can look up manual regex(7) by command man 7 regex or in English. A regex variable equal to . will suffice.
The above will give you ALL the results but it is not in any order that is particularly helpful for browsing.
So finally we can sort by dictionary order using sort -d and show only a page at a time using less .