All examples on this page search from the current directory, as specified by the dot after the find command.
To locate files that have been modified after [date]:
touch -d [date] date_marker find . -newer date_marker
Where [date] can be "13 may 2001 17:54:19" or "20091231" for example.
To find files created before [date], use the cnewer and negation conditions:
find . \! -cnewer date_marker
To find files betwee two times (1st Nov 2009 23:59 and 3rd Nov 23:59 in this example):
#!/bin/sh oldtime="200911012359" newtime="200911032359" touch -t $oldtime ./tmpoldfile touch -t $newtime ./tmpnewfile find . -type f -newer ./tmpoldfile ! -newer ./tmpnewfile -ls
The -ls flag has find show more details of each file.
find also has anewer for searching by access time, and cnewer for searching by status change time.
Note: After testing, the following doesn't seem to work properly:
From the The Linux Cookbook: Tips and Techniques for Everyday Use - Finding Files.
To list all of the files in the `/usr' directory tree that were modified one year or longer ago, type:
find /usr -mtime +356 -daystart
To list all of the files in your home directory tree that were modified from two to four days ago, type:
find ~ -mtime 2 -mtime -4 -daystart