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.

Dani AI

Generated

raised the core problem: lots of articles and photos scattered across many folders and Explorer becoming painfully slow to enumerate. ‘s mention of fzf and classical Unix tools shows the value of a fast command-line workflow, and ‘s find example reminds that type-restricted scans are far quicker than blind recursion. Below are practical, non-repetitive options and a short workflow that combine those strengths without relying on the built‑in Windows Indexer.

Two complementary strategies work best in practice. Keep a lightweight filename index for instant, global name lookups (the indexer approach gives the fastest, interactive results). For one-off or constrained searches, use a filesystem-level scan that leverages provider-side filters (faster than naive recursion). For large photo collections, couple either approach with a cataloging/photo manager (face/date/tag metadata) so grouping by year or person is immediate — filename search alone rarely substitutes for a proper image catalog.

A fast, targeted command-line pattern (PowerShell example) that keeps the scan scope tight and uses provider filtering:

Get-ChildItem -Path 'D:\Pictures' -Filter '*.jpg' -Recurse -File -ErrorAction SilentlyContinue |
  Where-Object { $_.Name -match 'son1|son2' } |
  Select-Object FullName, LastWriteTime

Notes on tuning and reliability: prefer -Filter for extension-level narrowing because it leverages the provider and is much faster than filtering only in PowerShell. Exclude large backup, OneDrive or temp folders from any index to keep the database small. Master‑File‑Table (MFT) queries work only on local NTFS volumes; network shares and non‑NTFS drives behave differently and may require periodic rescans. Finally, run the chosen indexer with appropriate permissions or as a service so all volumes are visible and updates stay near-instant.

Recommended Answers

All 3 Replies

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.