Bill,

Can you please give and example?

Thanks,

Craig

>>> "$Bill Luebkert" <[EMAIL PROTECTED]> 12/01/03 09:29AM >>>
Craig Sharp wrote:

> It sounds simple but here is the situation.
> 
> I have DB2 creating log files.  Each file name is consecutive.
> 
> Eg:
> 
> S0000628.LOG
> S0000629.LOG
> S0000630.LOG
> S0000631.LOG
> S0000632.LOG
> S0000633.LOG
> S0000634.LOG
> S0000635.LOG
> S0000636.LOG
> S0000637.LOG
> S0000638.LOG
> S0000639.LOG
> S0000640.LOG
> 
> The DBA wants me to remove all logs from the logging directory
except
> the last 10 logs from the active log.  For example.  If the active
log
> is S0000640.LOG, I am to remove all logs prior to S0000629.LOG.
> 
> Can anyone give me an idea on how to do this.  I do not want to do
this
> by date.  Only by name.

I had globbing, so I would use opendir/readdir and either iterate
over the files checking for /^S\d{7,7}\.log$/ and saving them in an
array.

Then just sort the array and remove the last 10 with splice or
whatever.  Now just unlink the array items either all at once
or in a for loop (which would allow individual error checking).


-- 
  ,-/-  __      _  _         $Bill Luebkert   
Mailto:[EMAIL PROTECTED] 
 (_/   /  )    // //       DBE Collectibles    Mailto:[EMAIL PROTECTED] 
  / ) /--<  o // //      Castle of Medieval Myth & Magic
http://www.todbe.com/ 
-/-' /___/_<_</_</_    http://dbecoll.tripod.com/ (My Perl/Lakers
stuff)

_______________________________________________
Perl-Unix-Users mailing list
[EMAIL PROTECTED] 
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
_______________________________________________
Perl-Unix-Users mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to