How list file by range of date?
18,759
This should work
find . -type f -mtime -3
Explanation
find find files
. starting in the current directory (and it's subdirectories)
-type f which are plain files (not directories, or devices etc)
-mtime -3 modified less than 3 days ago
See man find
for details
Update
To find files last modified before a specific date and time (e.g. 08:15 on 20th February 2013) you can do something like
touch -t 201302200815 freds_accident
find . -type f ! -newer freds_accident
rm freds_accident
See man touch
(or info touch
- ugh!)
This is moderately horrible and there may be a better way. The above approach works on ancient and non-GNU Unix as well as current Linux.
Related videos on Youtube
Author by
Valter Silva
Updated on September 18, 2022Comments
-
Valter Silva over 1 year
I would like to list files with 3 days years old. I found this one at stackoverflow:
find . -type f -printf "%-.22T+ %M %n %-8u %-8g %8s %Tx %.8TX %p\n" | sort | cut -f 2- -d ' ' | grep 2012
But I kind don't understand what the whole command means. I wonder if there is something short and simple to understand.
-
Valter Silva about 11 yearsRed, just a curiosity, I'm reading the man find now, and I would like to list files older than today only,
daystart
it seems the right choice, but how do I pass thestart
date ? -
user5249203 about 11 yearsTypo in prior comment: s/daytime/daystart/. Also see update in answer.