If you are looking to find more tools, the GNU project (GNU's Not Unix) maintains a directory, a website listing categorized links to various free-software tools
(which they consider useful) called the GNU Directory.
Also try sites such as Sweet Code which offer mailing lists of useful tools which they find.
You may also try looking at the most highly rated, most active or most downloaded programs at SourceForge and FreshMeat.
Many of the tools listed in this guide are part of a package of tools, such as diffutils which contains the various tools used to find differences between files, such as diff, sdiff,
diff3, cmp. Most small tools are bundled together in this fashion. Most major distribution's will offer a search function to help you search the packages by file, you can of course do this via
the command line interface or a GUI.
If you need to search the distribution's available packages via the command line, the method will vary depending on the distribution you are using, see the subsections below or consult your
distribution's documentation (or of course the internet):
To find where a particular file came from use urpmf.
The results are often overwhelming as this particular command will take a string and list every file of every package in it's database that contains the particular keyword (ie. both uninstalled
and installed packages). To refine the results you may want to add a pipe to it and send it through grep -w file_name (the -w option will only show you only exact (whole word)
matches). How you would do this is shown below:
urpmf file_name | grep -w file_name
For more information on the urpm* commands, please refer to the tip towards the end of this section: Section 20.1.
To find which package a particular file came from use rpm with the -qf option.
rpm -qf /path/to/the/file
This will find which package the file came from. You need to use rpm -qf not with a keyword but with the location of the actual file. To find more information on the particular package
listed use rpm with the -qi option.
Note that the package name is the name of the package without the .arch.rpm (often .i386.rpm) extension on the end.
For more information on the usage of rpm, please refer to this section Section 20.1.
To find where a particular file came from use dpkg with the -S option.
There are two ways to do this:
You may also like to try (if it's installed, it's generally a lot faster than the dpkg search):
For more informaiton on deb and dlocate please refer to the relevant manual pages and online sources of information.