Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

What's the best way to search my file system on ubuntu and get results almost instantly? I have used catfish , tracker and the usual search tool provided with ubuntu.

Tracker finds nothing, ubuntu search tool is too slow and catfish most of the time finds nothing. I have a lot of PDFs and DJVU files that I want to access. In windows, there is a program called search everything that returns results almost instantly. I want a similar linux tool.

Please provide a detailed answer as possible as I'm a newbie in linux. If such a tool doesn't exist in ubuntu, what's the chance that I can find such tool in other linux distribution e.g mandriva, redhat?

share|improve this question
Related: askubuntu.com/q/4498/61218 –  Anwar Shah Sep 28 '12 at 19:18
add comment

5 Answers 5

Recoll can do this for you. It features full-text indexing for almost every document type you can imagine and a result overview sorted by page numbers for PDF documents.

enter image description here

enter image description here

You can install it through the software center (search for recoll) or get the new newest version through the recoll PPA (including a Unity lens):

sudo add-apt-repository ppa:recoll-backports/recoll-1.15-on
sudo apt-get update
sudo apt-get install recoll recoll-lens

If this is the first time you are installing from PPA, make sure you read these first:

What are PPAs and how do I use them?

Are PPA's safe to add to my system and what are some "red flags" to watch out for?

You can find documentation on how to use recoll here but it should be fairly easy to set up.

share|improve this answer
Thanks,Glutanimate . I have recoll and it's useless . I don't want what's inside the documents . All I want is to type a part of the file name and I get the result fast . All the tools I have tried either do not return results at all or can only work occasionally . Catfish have worked fine once but after I restarted my computer and tried it again , it returned nothing –  Nabil Sep 28 '12 at 18:08
But you can do that as well. Just choose file type from the drop down menu ( the one that says All Items in the screenshot) –  Glutanimate Sep 28 '12 at 18:09
I have done that but it still doesn't work . maybe because I didn't tell the program where to search ?Does it search the whole hard disk? –  Nabil Sep 28 '12 at 18:14
You have to define where it searches. By default it searches through home only. See the documentation for more details. –  Glutanimate Sep 28 '12 at 18:14
Well , I have those files on some partition but I do not find the option to choose partition C , E ,F familiar in windows ? –  Nabil Sep 28 '12 at 18:18
show 4 more comments

You can use locate tool. It is pretty fast on searching.

locate *.pdf

will list all the pdf file. See the manual page for more info.

$ locate --help
Usage: locate [OPTION]... [PATTERN]...

Search for entries in a mlocate database.

  -b, --basename         match only the base name of path names
  -c, --count            only print number of found entries
  -d, --database DBPATH  use DBPATH instead of default database (which is
  -e, --existing         only print entries for currently existing files
  -L, --follow           follow trailing symbolic links when checking file
                         existence (default)
  -h, --help             print this help
  -i, --ignore-case      ignore case distinctions when matching patterns
  -l, --limit, -n LIMIT  limit output (or counting) to LIMIT entries
  -m, --mmap             ignored, for backward compatibility
  -P, --nofollow, -H     don't follow trailing symbolic links when checking file
  -0, --null             separate entries with NUL on output
  -S, --statistics       don't search for entries, print statistics about each
                         used database
  -q, --quiet            report no error messages about reading databases
  -r, --regexp REGEXP    search for basic regexp REGEXP instead of patterns
      --regex            patterns are extended regexps
  -s, --stdio            ignored, for backward compatibility
  -V, --version          print version information
  -w, --wholename        match whole path name (default)
share|improve this answer
add comment

enter image description hereyou can also use gnome-search-tool . you can get it by sudo apt-get install gnome-search-tool

share|improve this answer
Thanks,August . I'm downloading it now. Hope it works –  Nabil Sep 28 '12 at 18:10
Yeah let us know , is it suits to your requirements or not . :D –  AgentCool Sep 28 '12 at 18:12
The download is complete but how can I use it? –  Nabil Sep 28 '12 at 18:15
open your unity dash and type as gnome-search-tool , it will opens with what and where you want to do the search . look the image . –  AgentCool Sep 28 '12 at 18:17
Cool , It doesn't work too –  Nabil Sep 28 '12 at 18:27
show 3 more comments

The following Python code will return search results very quickly. Just change the second parameter in fnmatch.fnmatch(file,'*.txt) to whatever you are looking for. It's incredibly quick.

import fnmatch
import os

for file in os.listdir('.'):
    if fnmatch.fnmatch(file, '*.txt'):
        print file
share|improve this answer
add comment

Another option is Synapse.
Integrates Zeitgeist results.
I have a lot of documents on my system, and was surprised at how fast Synapse was able to find the files I need.

sudo apt-get install synapse


share|improve this answer
The Unity dash also uses Zeitgeist and seems to be too slow for the OP. –  LiveWireBT Oct 24 '12 at 20:10
add comment

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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