Find Any File (FAF)
- Convenient folder and icon views for results
- Can search in other users' home folders ("root" mode)
- Queries can be saved for easy re-use
- Can be launched with a self defined keyboard shortcut
Find Any File is Shareware
You may try it out without buying first. Simply download it.
If you keep using it you are expected to pay for it, though.
New in version 2.3.1:
- Fixes some critical search issues with macOS Catalina and El Capitan.
New in version 2.3:
- Native Apple Silicon (M1) code.
- Search for Tags
- Search for and display Date Last Opened and Date Added
- Works with Alfred, Keyboard Maestro, PopClip etc.
New in version 2.2.1:
- Fixes a potential crash.
- The Find window doesn't get excessively wide any more.
New in version 2.2:
- Ready for macOS Big Sur.
- You can now save and re-open the results.
New in version 2.1.1:
- Icons in Preview Grid should look correct again.
- Does not remove Volumes from Login Items any more.
New in version 2.1:
- Includes Spotlight for even faster results.
- Many bug fixes.
New in version 2.0:
- FAF is now a 64 bit app.
- Shows results as soon as they're found.
- Can search by Kind (Images, Audio, etc.).
- Can search with regular expressions.
New in version 1.9.4:
- Compatible with version 2 in regards to preferences and .faf files.
- Several bug fixes.
Manual Features | Search Examples | Preferences | Rules | Tips & Tricks | Alternatives | Acknowledgements | Contact
This is a program for Mac OS X that lets you search for files on your disks.
Contrary to Spotlight, it does not use a database but instead uses the file system driver's fast search operations, where available. This lets you search for file properties such as name, dates, size, etc.
Find Any File can find files that Spotlight doesn't, e.g. those inside bundles and packages and in inside folders that are usually excluded from Spotlight search, such as System and Library.
Find Any File has a few gems that other search tools do not offer:
- It offers a hierarchical view for the found items as an alternative to the common flat list view. You can switch to it using ⌘2 or click on the center segment of the "View" button at the top of the Results window:
For instance, this search revealed thousands of hits. If you'd look at that many results in a flat list, it would be hard to browse. In the hierarchical view you can directly look for the results in the folders that interest you.
Also note that some rows are black (and bold) while others are gray (and cursive). The black ones are the ones you had searched for, whereas the gray ones are just there to show you the enclosing folders, without being direct hits.
- You can filter the shown items further by their name, kind, enclosing folder etc. (see below).
- You can save your entered searches to files (they'll have the extension ".faf"). You can then double click them in the Finder to have them start the search immediately, or use the saved search as a preset.
- If you hold the option key (⌥) down in the Find window, the Find button turns into Find All. If you click on it then, you are asked for an administrator password - and then Find Any File will restart with root permissions, being able to find really any file on your Mac's local volumes (something that Spotlight won't ever do).
Have you just installed or launched a program for the first time and like to see what it modified or added to your disks? Here's a way to do that (it excludes .DS_Store files from the results because they're not really relevant to this question).
Search for multiple file extensions at once, like Word documents in both the old and the new format.
Searching for files only inside your Music folder that are neither in AAC nor in MP3 format and which are at least a megabyte in size? So you could enter two Name criteria as follows, along with a minimum size. Also note that the search is limited explicitly to the Music folder.
Or you might want to find all Numbers documents created in 2018 only.
You can also search for text content (plain text only, though, i.e. not in .docx, .xlsx or .pdf files, as they're usually compressed).
Many search options
FAF lets you set up a complex set of rules if you like. Here is an overview of the properties you can look for. There are more verbs (operators) that are not shown. You can match your search term to just the start of end of a file name, exclude terms from names, specify a range of dates or file sizes (by using two rules, one with the lower and one with the upper bound), use regular expressions for file names and text file content, or look specifically for images, audio, video, plain and rich text types.
For a file or folder to be found, all non-empty rules must match. If you need an "either … or" condition, you either have to perform separate searches for them or use one of the "Name contains / ends in any of …" rules.
Currently, searching for specific tags is not possible yet, though you can search for any item with a label and then use the search filter in the Results window to see only the tags you like to find. See the FAQ on this.
Expert Mode options (usually hidden)
Additional less frequently needed rules can be revealed by holding down the option (⌥) key when clicking onto the left popup menu.
To make them permanently visible, issue this command in Terminal.app:
The Preferences window
- Hot Key
- See below for setting up a keyboard shortcut for launching FAF quickly.
- Dim Color
- When using the hierarchical view, enclosing folders that are not part of the search are shown in this color so that they're easier to distinguish from the folders and files that match your search rules.
- Expand all folders when showing results
- Applies to the hierarchical view. If unchecked, only folders that have a single matching item inside will be opened.
- Remember "Show…" choices in Results windows
- If you like the "Invisibles", "Package Contents" and "Trashed" options to keep their settings instead of resetting to "Show" with each search, check this option.
- Enable "Open Recent Search" menu
- If you do not want FAF to remember your recent searches, uncheck this option.
- Show Results Early
- Opens the Results window as soon as items are found. You can then stop the search as soon as you see what you were looking for.
- Include Spotlight results
- By including Spotlight, items may appear sooner in the Results window. When searching for File Content, Spotlight may include text from rich text files that FAF otherwise would not find (because FAF can only search plain text). It also may speed up searches on NAS systems that support Spotlight (such as Synology's Universal Search, which you may have to explicitly enable on your NAS first). Note that FAF will keep searching until it has performed its own rigorous look at every file, meaning that even if Spotlight already delivered all possible results in the first seconds of the search, FAF will not finish faster, because it will still perform its own (usually slower) search to make sure nothing was missed. Therefore, this option is only useful for getting your results appear faster, and thereby only makes sense if you also have the option "Show Results Early" enabled.
- Automatically check for updates
- These options are only available in the FAF version downloaded from the FAF website but not when installed from the Mac App Store (MAS), as the App Store performs update checks on its own.
- Special Folders…
- See below for configuring folders that should be excluded from search.
- Reset All
- Click this to reset your preferences to the recommended defaults. Also clears your recent searches.
The Special Folders window
You can open the Special Folders settings from the Find Any File menu and from the Preferences window's same-named button. You can also use the shortcut ⌘⇧, (cmd-shift-comma).
- Check this option to have a folder or disk excluded from the results. An example is to exclude the Time Machine backup disk, so that it's not searched when choosing "on all disks" as the target.
- Use this option for volumes that do not support the "fast search" (CatalogSearch, searchfs) correctly even if they report they would. This may be the case for NAS systems that are mounted via the AFP protocol, and which use an old implementation of netatalk. You'd check this option if you suspect that FAF does not find all the items it should on a network volume. With this option checked, the slow will be slower but should not be missing any items any more. Volumes not offering "fast search" won't show the Slow checkbox.
Options in the Results menu
- Deleted Items Remain Visible
- When checked, if files are deleted by using FAF's Delete Immediately command, or when they got deleted by background processes, they remain visible in FAF's results windows, but with a strike-through line. To remove them from the results, use the Remove Deleted Items command.
- Automatically Refresh
- When checked, FAF will update the shown items if they get changed by other programs, e.g. if you modify, rename, move or delete a found item. On network volumes this may not always work, though. If unchecked, you can still use the Refresh command to force an update.
- Remove from Results
- This removes the selected items from the window. This allows you to "clean up" the results. This is especially useful for removing unwanted results from entire folder contents when using the hierarchical view, and then switch to the flat or icon view, with these items now removed.
- Note that you can also add results that you previously saved to a
.pathsfile by dragging that file from the Finder and dropping it into a Results window.
- None of this will alter any files or folders on your disk; it only changes what's shown as results in FAF.
Search Criteria (Rules)
Available rules, including the "expert" rules that are only available when holding down the option (⌥) key.
Note: To fill the input field for a particular name, date, size, code or UTI, you can drag a file or folder into the rule's field.
- Matches file names.
- Last modified date
- Matches by the date the file or folder was last modified and stored on disk.
- Created date
- Matches by the date the file or folder was created on disk.
- Last opened date
- Matches by the date the file or folder was last opened or accessed.
- Added date (hidden expert option)
- Matches by the date the file or folder was placed into its containing folder.
- File size
- Matches by the data fork size of the file, which is usually the size shown by the Finder (exception: If the file also has a resource fork, which is rare nowadays, that size is added to the size shown by Finder but not when searching by size in this program).
- Resource size (hidden expert option)
- Matches by the resource fork size, if it's present (rarely is).
- Matches by a set of pre-defined file kinds: Image, Video, Audio, Text (rich text including PDF, Pages and Word documents), Plain Text (i.e. non-rich text such as .html, .txt and markdown files), Word & Pages documents, Spreadsheet (Excel, Numbers), Presentation (Keynote, Powerpoint), PDF, eBook, Application and Archive (zip, tar etc.). If you like to have more file kinds available in this menu, please contact me. Note that this search is basically a shortcut of the expert rule "File Type UTI conforms to …" (see below), meaning I can only add kinds for which there's a UTI defined.
- Matches one of the 7 colors available as Tags. However, if a file or folder has more than one Tag of different color, a search will succeed only for one of the tag colors but not for the other(s). That's a limitation of how macOS has migrated Label colors into Tags, and FAF can't do much about this.
- Matches the Finder Tags of files and folder. For example, searching for "Tag contains ho" finds items with Tags such as "Hot" and "Holiday 2020". If a file has multiple tags, it counts as a match if any of the tags fits the rule. To find items that must gas multiple tags, add a separate Tag rule for each.
- Is a folder
- Lets you limit the search to either files (No) or folders (Yes).
- Is a Finder Alias
- Lets you limit the search to either regular files and folders (No) or Finder Aliases and symlinks (Yes).
- Case sensitive names
- If set to Yes, text entered into the Name, Path and Folder names rules has to match even in case, e.g. searching for "Name contains foo" won't find a file named "Foo".
- Case sensitive content (hidden expert option)
- If set to Yes, text entered into the File content rule has to match even in case, e.g. searching for "File content contains foo" won't find text files that contain "Foo" but not "foo".
- File Type code (hidden expert option)
- Matches the 4-letter codes used by Classic Mac OS files, such as slnk for symlink files.
- Creator code (hidden expert option)
- Matches the 4-letter codes used by Classic Mac OS files, such as MACS for files created by Finder.
- Owner ID (hidden expert option)
- Matches the Unix owner ID, such as 0 for files owned by root and 501 for the first user created on the system.
- Group ID (hidden expert option)
- Matches the Unix group ID.
- Matches the enclosing folder's path, e.g. "/System/Library/".
- Folder names
- Matches any of the folder names in which the to-be-found items resides. For example, to match files inside "/System/Library", both "Folder names is System" and "Folder names is Library" would work.
- Negate conditions (hidden expert option)
- Inverts what will be found. If set to Yes, all items that would not be matched by all other rules will then be considered a match.
- Invisible items
- Skips or hides hidden items from the results (if an entire disk is searched, they will still be found but not shown, whereas when searching a folder (or doing a "slow" search), such items will be skipped in the search, which may speed up the search process.
- Package contents
- Similar to Invisible items, but for Package (bundle) contents, including contents of applications.
- Trashed contents
- Similar to Invisible items, but for items inside the Trash.
- Limit folder depth
- Specifies how many folders deep the search should reach. A value of "1" finds only the immediate contents of the given start folder or volume. This also forces a "slow" search on searching entire volumes.
- Limit amount
- Limits the number of found items to the given number. Prevents the "Many items founds" confirmation dialog if the "Show Results Early" option is turned off.
- Pass results (hidden expert option)
- Lets you choose an application or a file that will receive the found items instead of showing them in a Results window.
- Useful if you want to post process the found items in your own program, e.g. with AppleScript.
- When saving to a file, it'll have the extension
.paths, containing one path per line. You can then also drag these files onto FAF's app icon to open them again in a new Results window, or even drag them into an open Results window, adding the items to that window.
- File content
- Matches plain text content in files. The entered search string will be found inside files that contain the text in UTF-8 or UTF-16 format. This search won't find text inside many "rich text" files, such as .docx (Word), .xlsx (Excel) and PDF. However, if you allow Spotlight Results to be included in the results, then results from such rich text files may be included, provided Spotlight has indexed them before.
- File Type UTI (hidden expert option)
- Matches file types based on their UTI code. See here for commonly used UTI codes. You can find exact matches or confirming matches, which means that if you search for UTIs conforming to "public.archive", it'll find all kinds of archive files, including .zip, .tar and even .docx because Word documents have their contents compressed in zip archives.
- Slow mode (hidden expert option)
- Forces slow search on volumes (useful only to test whether the fast volume search is returning different results, which can happen if there's a bug in FAF or when searching on certain NAS and Linux systems).
Name … verbs
- A "smart" search option, similar to the way Spotlight does it. For example, Name contains my voice finds file names such as "invoice for my car.doc" and "myvoice.mp3", i.e. any name that contains both "my" and "voice".
- contains literally
- Searches for an exact occurence of the entered text in a file name. For example, Name contains literally my voice finds "hear my voices.mp3", but not "invoice for my car.doc".
- Finds file names that are exactly as typed. For example, Name is hosts finds files named "hosts", but not "hosts.txt" nor "ghosts".
- begins with
- Finds files whose name start with the entered text.
- ends with
- Finds files whose name end with the entered text. Note that this usually means that you're matching on the file extension of files. If you have disabled the option to not show all file extensions in the Advanced Finder Preferences, then you may see many files without extensions in Finder, but FAF sees them. For instance, applications won't show their ".app" extension, so if you want to find apps like "PhoneView" and "Preview" with FAF, searching for Name ends with view won't find them, but Name ends with view.app would.
- does not contain
- Names may not contain the entered text. This is not a "smart" option like contains is. So, if you want to exclude names that contain neither "foo" nor "bar", you have to add this rule twice, one with "foo" and one with "bar".
- contains words
- First, this option is "smart" like contains. That means entering "my voice" will look for both "my" and "voice" as words in the file names. Secondly, these words have to be occurring as true words in the file name, meaning that searching for Name contains words my voice finds "this is my voice" and "voice, oh my!" but not "my voices".
- matches pattern
- Performs a simple wildcard match where the asterisk (
*) stands for any number of characters. Examples: Name matches pattern foo*bar*.txt finds any names that begin with "foo", then contain "bar" and end with ".txt", such as "foobar.txt" and "foo is not barred.txt", but not "This is foo bar.txt" (for this, you'd have to search for *foo*bar*.txt).
- contains any of
- Lets you enter a set of alternatives ("or" operation), separated by spaces, of which at least one has to occur in the matched file names.
- ends with any of
- Lets you enter a set of alternatives ("or" operation), separated by spaces, of which at least one has to occur at the end in the matched file names. This is mainly useful for finding files that end in a set of extensions. For example, Name ends with any of .doc .docx finds both old and new Word documents.
- matches regex
- This lets you write complex search rules using regular expressions.
You can use
^and $to represent the start and end of the file name. Since v2.2, FAF uses the PCRE2 engine.
Besides the obvious things you can see by looking at the menus, there are a few things that are not so obvious:
Launch Find Any File with a keyboard shortcut, just like it works with Spotlight
This can be enabled in the Preferences window of Find Any File.
For instance, to open FAF whenever you type ^⌥F (ctrl-option-F) in any application, set the Hot Key up as follows:
- Launch Find Any File and open its Preferences window from the menu.
- Click into the field which reads "click to set".
- Hold down the ctrl (^) and option (⌥) keys and press the "F" key. Now it should show below: "Hot Key ^⌥F is currently active"
- Select "Works globally" instead of "Works only in Finder".
- To make this shortcut permanent, check the box that says "Install Hot Key at Login".
Search multiple disks or folders
To search a custom set of disks or folders, simply drag & drop them from the Finder onto the popup menu that lets you select where to search.
If you can't drag all the icons at once, you may also add them to an existing set by holding down the shift (⇧) key when dropping them onto the popup menu.
Instead of using drag & drop, you can also hold down the shift (⇧) key while choosing another item from the popup menu.
To make your choice permanent, use the command Save as Default Search under the File menu.
Filter the Results
Use the filter in the flat (non-hierarchical) list to reduce the shown items to the text you enter. Use the menu under the magnifier glass to choose what column to filter on.
Choose which columns to show in the Results
Right-click on the column titles to get a menu that lets you choose which columns appear in the list.
Remember the preferred disks and rules for future searches
When Find Any File is launched, it always defaults to searching the boot volume. If you prefer to search a different volume by default, do this: Launch Find Any File, choose your preferred volume, then use the Save command to save the search criteria to a file. Next time, instead of launching Find Any File directly, open that saved file instead - Find Any File will launch with the presets you chose before.
Alternatively, you can set up your preferred search and choose Save As Default Search from the File menu in order to have these settings reappear next time you launch Find Any File.
(Note: If you have saved a Search with the option to start the search automatically when opening the file, you can still prevent the search from starting by holding down the option (⌥) key while Find Any File opens the document.)
Copy names, paths, shown columns and other properties of found items
Copy (⌘C) works like in the Finder: The names of all items will be put into the clipboard, along with a reference of each file or folder, allowing you to paste the items again in Finder, Mail and other programs.
If you hold down the shift (⇧) key when choosing Copy from the Edit menu, the values of all visible columns will be put into the clipboard, separated by TAB characters. This allows pasting into a spreadsheet, for instance.
Holding down the option (⌥) key when choosing Copy from the Edit menu will copy the POSIX (Unix) paths.
Holding down the ctrl (^) key when choosing Copy from the Edit menu will put all properties of each selected item in JSON format into the clipboard. This is useful for post processing the results with other programs.
Operations that you can perform on the found items
By right-clicking on a single item or on a selection, you get a few special options that the Finder does not offer:
- Delete the files and folders right away, instead of moving them to the Trash. If the items are locked or system protected, FAF will alert you and then attempt to unlock them (though this may not work with original Apple-installed files, which is usually a good thing).
- Hide or unhide items.
- Create Finder Aliases for all items into one folder you choose.
Most of these commands can be issued via keyboard shortcuts as well. Look their shortcuts up in the Results menu at the top menu bar. And even the system-wide Services commands can be activated by shortcuts – you can assign these yourself in the System Preferences, under Keyboard / Shortcuts / Services.
Automate "Find All" (root permissions)
If you want to use "Find All", you have to hold down the option (⌥) key so that the Find button turns into Find All. Once you click on this button, you'll be asked to enter your password.
You can save your admin password in your personal keychain just for Find Any File so that you won't be asked for it every time any more. Here's how:
- Launch the program Keychain Access.app, which you can find in the Utilities folder inside the Applications folder.
- From the File menu, choose New Password Item (⌘N).
- In the appearing dialog, enter "FindAnyFile" for the Keychain Item Name, then enter your Admin user name (i.e. your Mac login name) and your Admin password into the Account Name and Password fields.
- Save it (i.e. click the Add button). This will add a password item of kind application password with the name FindAnyFile to your default keychain.
- Launch Find Any File (FAF) and perform a root-level search by holding the option (⌥) key before clicking on the Find button. You'll be asked to confirm that Find Any File wants to access information from your keychain. Choose Always Allow.
Now, whenever you launch FAF and want to search with root permissions, you need to hold down the option key. You can change that, too, so that FAF will always search with root permissions. To do that, launch the program Terminal.app and paste the following into it:
defaults write org.tempel.findanyfile AlwaysFindAll -bool yes
Press the Return key to issue this command. Now quit and relaunch FAF - the Find button should now read Find All. With that, you're set. (To turn off this feature, issue the Terminal command again, replacing yes with no.)
Invoke FAF via URL, e.g. from Alfred and Keyboard Maestro
More Tips and Help
For more tips and troubleshooting help see the Support page.
Alternatives to Find Any File
While I appreciate hearing from a happy user, especially if (s)he sends me some money for it, even Find Any File is neither perfect nor to everyone's taste. Therefore, I like to refer you to some other programs that offer similar features. I hope one of them suits your needs. If not, you can always ask me, maybe I can help :)
A popular alternative to FAF is EasyFind by DEVONtechnologies. It offers a few extra search options (e.g. wildcards), displays results differently and has a single-window user interface which you might prefer.
If you want to search for your documents mainly for their textual content, especially if it's formatted text from Word, Pages, Excel, or in a PDF, take a look at HoudahSpot. While it relies on the Spotlight search feature, it gives you much more control over the search, similar to FAF, and also displays the found items much better.
If you primarily search media files such as videos, photos, or audio files, NeoFinder might be the right tool for you. It permanently catalogues your files, even those that may be stored on other disks or FTP servers that are not always attached, and keeps even detailed information about your image properties (EXIF data etc.), thumbnails, XMP data, and more.
Finally, to see which files, applications and folders occupy the most space on your disk (FAF can't search for app sizes, only regular file sizes), consider DaisyDisk.
See Version History page.
Retina icon design by Adam Betts
Classic icon design by Chris Paveglio (www.paveglio.com)
I also thank Michael Berglund, Edward Loveall and especially Alexey Volokhov for their contributions of alternative icons.
French translation by Ronald A. Leroux, Valdemar de Sousa and Rei Vilo, proofreading by Renaud Boisjoly and Stéphane Pinel.
Italian translation by Vincenzo Boiano (VinBoiSoft).
Spanish translation by Natalia Portillo.
Portuguese translation by Fernando Valente.
Many thanks to DEVONtechnologies for their support and for EasyFind.
This tool's design was inspired by the Classic Mac OS' Find File application, which also existed under the name Sherlock for a while.
Questions, Feedback, Contact
I hope you enjoy using Find Any File.