I have a list of files in file.lst
.
Now I want to find all files in a directory dir
which are older than 7 days, except those in the file.lst
Pipe the find-command to grep
using the -v
and -f
switches
find -mtime +7 -print | grep -vf file.lst > found.lst
grep options:
-v : invert the match
-f file: - obtains patterns from FILE, one per line
example:
$ ls
a b c d file.lst
$ cat file.lst
a$
b$
c$
$ find . | grep -vf file.lst
.
./file.lst
./d