How to find all files of a specific type recursively in Unix-based operating systems (Linux and Mac)
Nick Scialli • September 28, 2021 • 🚀 1 minute read
The find
command line utility is a powerful tool for searching your filesystem in Linux and MacOS. A common use case is trying to find all files with a certain extension.
In the following example, we use the find
command to find all txt
files within the current directory, recursively.
find . -type f -name "*.txt"
Let’s break down how this works:
- The first argument we provide the
find
command is.
, which tellsfind
to start from the current directory. if we wanted to start in a subdirectory calledmy_directory
, our command would befind my_directory -type f -name "*.txt"
. - Next up, we have the
type
flag. As you might intuit, thef
is for files. You can also used
for directories. - Finally, we have the
name
flag. Since we’re looking for all.txt
files, we use a*
wildcard to indicate that we don’t really care what the file name is so long as it ends in.txt
.
Note that we don’t specify anything for searching recursively—this will be done automatically!
Did this post help you?
I'd appreciate your feedback so I can make my blog posts more helpful. Did this post help you learn something or fix an issue you were having?
If you'd like to support this blog by buying me a coffee I'd really appreciate it!

Nick Scialli is a software engineer at the U.S. Digital Service.