If you're using GNU find (as is used on most Linux systems), you'll want to use -mount
:
find / -mount -name .vimrc
OS X/MacOS provides the local
pseudo-fstype. This not in GNU find (fstypes recognized by GNU find).
Use the -fstype local
option to find on MacOS:
find / -fstype local -name .vimrc
If you want to exclude only specific paths, you could use -prune
:
find / -path "/path/to/ignore" -prune -o -name .vimrc
Update: MacOS Catalina (Jan 2022)
I'm two major releases behind the latest MacOS, but some has changed.
First, MacOS now supports the -mount
option. The man page for find
says "The same thing as -xdev, for GNU find compatibility."
Second, -fstype local
still seems to work. The man page Indiates that it "matches any file system physically mounted on the system where the find is being executed".
I did a test with two drives mounted in /Volumes
, one a USB flash drive (which I think counts as physically mounted) and the other a network drive. I ran find /Volumes <option> -name '*txt'
. Running with -mount
returned no results immediately since there were no such files on the current filesystem. Running with -fstype local
found a .txt
file on the USB drive very quickly and then seemed to traverse the full mounted drive without returning any files (even though some do exist).