A high performace file locator for instantly finding files and folders by name.
Hello WindFind 🌹, hello world!
If you want a high performance SSH/Telnet/Serial/Shell client, you can try WindTerm.
If you want a high performance text editor, you can try WindEdit.
When developing WindTerm, I need a fast file locator, so WindFind was created as a by-product. Hope it is a good by-product.
Completely FREE for commercial and non-commercial use without limitations. All released source codes (except thirdparty directory) are provided under the terms of Apache-2.0 license.
WindFind
supports any user indexing any file system, as long as the operating system can read it, everything can be indexed quickly.
WindFind
's folder traversal speed is unmatched. Once it detects administrator privileges, it directly indexes the MFT
, delivering incredibly fast performance. The thoughtfully designed index data structure allows each file to be represented with just 4 bytes, capturing its path, file size, and modification time, resulting in an index file that is smaller than ever before.
More than just indexing and searching—it's a master at displaying file lists and calculating sizes! Enjoy vibrant colors, striking icons, and lightning-fast printing speeds, all designed to elevate your file browsing experience to new heights!
- Whether indexing, searching, or outputting, it is incredibly fast.
- Indexing files is highly optimized, generating only 4 MiB of index data for every million files.
- Supports indexing files from any file system, similar to
everything
,locate
,mlocate
,plocate
. - Supports displaying file lists, similar to
dir
,ls
, but very fast. - Supports displaying a tree view of file lists, similar to
tree
, but very fast. - Supports calculating folder sizes, similar to
du
, but very fast. - Supports customizable rules to color files and assign icons based on folder names, file names, and file extensions, similar to
exa
,eza
,lsd
. - Supports regex search for files or folders in a specified directory, similar to
find
,fd
.
.
Current folder..
Parent folder/
Root folder~
Home folder
wf .
Display the file list of the current folder.wf ..
Display the file list of the parent folder.wf /
Display the file list of the root folder.wf ~
Display the file list of the home folder.wf c:\folder
Display the file list of a specified folder.wf c:\folder1,c:\folder2,c:\folder3
Display the file lists of specified multiple folders.wf -d 3 c:\folder
Display a tree view of the specified folder, with a maximum depth of3
levels. The long option for-d
is--depth
.wf -d 3 c:\folder1,c:\folder2,c:\folder3d
Display the tree view of each specified folder, with a maximum depth of3
levels.
wf -s c:\folder
Display the sizes of each subfolder in the specified folder. The long option for-s
is--size
.wf -s -n 10 c:\folder
Display the top10
largest subfolders in the specified folder. The long option for-n
is--lines
.wf -s -d 3 -n 10 c:\folder
Display the top10
largest subfolders in the specified folder with a maximum depth of3
levels.wf -s c:\folder1,c:\folder2,c:\folder3
Display the sizes of each subfolder in the specified multiple folders.wf -s -n 10 c:\folder1,c:\folder2,c:\folder3
Display the top10
largest subfolders in the specified multiple folders.wf -s -d 3 -n 10 c:\folder1,c:\folder2,c:\folder3
Display the top10
largest subfolders in the specified multiple folders with a maximum depth of3
levels.
wf -u
Update the index file, if it doesn't exist, create it. The long option for-u
is--update
.wf -u c:\folder
Update the index for the specified folder, if it doesn't exist, create it.wf . regex
Useregex
to search for files in the current folder without updating the index.wf -C . regex
Useregex
to search for files in the current folder with case insensitivity and without updating the index. The long option for-C
is--case-sensitive
.wf -u . regex
First update the index, then useregex
to search for files in the current folder.wf -u .,..,c:\folder regex1 regex2 regex3
First update the index, then search for files matching theregex1
,regex2
andregex3
in thecurrent folder
, theparent folder
, andc:\folder
.wf -u .,..,c:\folder regex1|regex2|regex3
First update the index, then search for files matching any of theregex1
,regex2
andregex3
in thecurrent folder
, theparent folder
, andc:\folder
Note: By default, matches are case insensitive.
Note: wf -u c:\folder regex
and wf c:\folder regex -u
are equivalent. If the previous command didn't find any files, simply append -u
to update the index and search again, making it very convenient.
The hardware used for generating the data in these benchmarks was
windows 10 - 2.3 GHz Intel Core i5 and 8GB memory.
The version of clients:
Application | Version | Release Date |
---|---|---|
WindFind Birth | v1.0.0 | 2024-11-01 |
Everything | v1.4.1.1024.x64 | 2023-05-26 |
Everything | v1.5.0.1383a.x64 | 2024-06-17 |
All test data is for reference only.
WindFind Birth | Everything v1.4.1.1024.x64 | Everything v1.5.0.1383a.x64 | ||
---|---|---|---|---|
User Role | Administrator | Regular User | Administrator | Administrator |
Indexed File Count | 1561029 | 1539637 | 1561161 | 1561160 |
Indexed File Size | 6.80 MiB (compressed) | 6.69 MiB (compressed) | 13.2 MiB (compressed) 41.5 MiB (uncompressed) |
37.0 MiB (uncompressed) |
Create Index (Cold Data) | 6.336s | 10.20s | 87.12s | 10.25s |
Create Index (Hot Data) | 4.314s | 5.148s | 87.70s | 6.30s |
Update Index | 1.175s | 1.242s | Very fast, tens of ms | Very fast, tens of ms |
Load Index Duration | 0.132s | 0.128s | Slow, 1s - 2s | Slow, 1s - 2s |
Save Index Duration | 0.155s | 0.148s | Slow, 1s - 4s | Slow, 1s - 4s |
Single Regex Search Duration | Very fast, 8ms - 12ms | Very fast, 8ms - 12ms | Very fast, tens of ms | Very fast, tens of ms |
Note: Everything v1.4.1.1024.x64 does not support the exFAT file system.
WindFind Birth | Everything v1.5.0.1383a.x64 | |
---|---|---|
User Role | Administrator, Regular User | Administrator, Regular User |
Indexed File Count | 200758 | 200757 |
Indexed File Size | 0.73 MiB (compressed) | 4.1 MiB (uncompressed) |
Create Index (Cold Data) | 1.566s | 10.48s |
Create Index (Hot Data) | 1.027s | 1.38s |
Update Index | 1.055s | Very fast, tens of ms |
Load Index Duration | 20ms | Slow, several hundred milliseconds |
Save Index Duration | 27ms | Slow, several hundred milliseconds |
Single Regex Search Duration | Very fast, 8ms - 12ms | Very fast, tens of ms |
Windows binary: https://github.com/kingToolbox/WindFind/releases
Linux binary and MacOS binary will be released soon, stay tuned!
Since WindFind is just a by-product of WindTerm, and all the source code is shared with WindTerm, if you have any source code requirements, please visit WindTerm.
Please note that WindTerm, WindEdit, and WindFind are all partial open source projects.
Any issues and feature requests are welcome.
Please click issues to commit an issue or a feature request.
Please click Discussion to discuss any topics related to file systems, indexing, and performance improvements.