I frequently find myself looking for files on my computer. 99.9% of the time I am looking for a file by name rather than by contents. Typically there are two ways to find a file when you don't know what folder it is in. You can do it from the command line as in

D:\
dir *partname* /s

This generally takes quite a while with the larger drives/partitions in use these days. You can also go to an Explorer window and type something in the search box. I find this horribly slow as well. For my purposes, I want a fast way to get the full name and location of a file and the following free software was recommended to me by a trusted expert. It consunmes pretty close to zero resources. Once it has built a database of files (which files and folders are configurable), searching is almost instantaneous. Searching has many options. If you know a file name contains certain words you can just type them into the search box separated by spaces and a list (updated as you type) of file names containing all of the entered strings (in any order) is displayed. You can also separate terms by a vertical bar to use an OR instead of AND search. There are more complex searches such as

dm:today
dm:thisweek

to display files with the corresponding date modified (use dc for date created). There are many other search parameters for more complex searches (regex patterns are also available for the hardcore).

Everything

Once you have a list of files (file names in one column, paths in another, etc) you can run/open the file from the list in the same way you would from an Explorer window.

For Unix-like system users, there are quite a few options here. Classically, find (super super powerful but doesn't use any index) and locate (uses an index but has fewer options for searching).

However, 99% of the time I know roughly where the file is; it's usually in the project I'm working on. FZF. Here it is in action

In my case, I have hundreds of articles plus a few thousand pictures in many folders and sub-folders and it is often very convenient to be able to see all of a particular type of picture (say, everything from 1995 or all pictures of either of my sons) in one window. I can't do this quickly with Windows Explorer. Especially since, depending on the sort order and how many files are in a folder, Windows can take up to 60 seconds to display all of the file names.

find has some nice options, like restricting the search to either folders or files, and case sensitivity. Let's say you are just looking for jpeg file: find root-dirname -type f -iname '*.jpg'

You will get a list of jpeg files (including directories they are in) starting in the "root-dirname", such as C:\mydirectory.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.