On Thursday 07 December 2006 11:16, Nate Bargmann wrote:
> Since there is a lot of knowledge on this list, I thought I'd aske
> here.
>
> This may be trivial, but I'm not even sure how to search for what I
> want to do.
>
> I have a directory of files that are created daily using
> filename-`date +%Y%m%d`.tar.gz so I have a directory with files whose
> names advance from filename-20061201.tar.gz to filename-20061202.tar.gz
> to filename-20061203.tar.gz and so on.  Based on the date in the
> filename, I would like to delete any than are X days older than today's
> date.  So, I'm not interested in the actual created/modified date, just
> the numeric string in the name.

This will require some debugging on your part, but hopefully this will be 
pretty straightforward

old_date=20061201
for file_name in *tar.gz; 
        do
                file_to_remove_date=echo $file_name | tr -d [:alpha:] | tr -d 
[=-=];
                if test $file_to_remove_date -le $old_date; 
                        then
                                echo "rm $file_name";
                fi
        done


There are certainly better ways to do this.  You can do a man tr to see what 
the above is doing.  

John


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to