On Fri, 5 Mar 2010, t.piwowar wrote:
> The following was suggested to me for a cron job to delete old emails
> from a spam folder. I don't completely understand the syntax at the
> end of the line.
>
> find /home/user/mail/domain/email/.spam -type f +mtime 30 -exec rm -f '{}'
\;
>
>
> should not "+mtime 30" be "-mtime +30"
Yes, it should be -mtime
30 if you want exactly 30 days
+30 for 30 days and older
-30 for 30 days and younger
> What does "'{}'" (quote lbrace rbrace quote) mean?
You can skip the single quotes. {} means substitute what the find
command found in earlier part, into the -exec section.
> What does the "\" at the end mean?
\; is the end of your -exec option. So, you could have another
option after that (ie: ... -exec rm -f {} \; -print)
However, this is a dangerous command. Run the following first to
see what it does. If you like the output, run it with 'rm -f'
instead of 'ls -l'
find /some/path -type f -mtime +30 -exec ls -l {} \;
*************************************************************************
** List info, subscription management, list rules, archives, privacy **
** policy, calmness, a member map, and more at http://www.cguys.org/ **
*************************************************************************