Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re^3: Delete all but the most recent backup file

by Kenosis (Priest)
on Jan 27, 2013 at 23:12 UTC ( [id://1015593]=note: print w/replies, xml ) Need Help??


in reply to Re^2: Delete all but the most recent backup file
in thread Delete all but the most recent backup file

You're most welcome!

Yes, Komodo appears to just be alerting you about <DATA>, but should certainly know better, since there's a __DATA__ section.

Try the following:

use strict; use warnings; use File::stat; chomp( my @fileNames = <*.bak> ); my @sortedFileNames = map $_->[0], sort { $b->[1] <=> $a->[1] } map { my $stat = stat $_; [ $_, $stat->mtime ] } grep /^backup_\d\d_\d\d_\d{4}.bak$/, @fileNames; shift @sortedFileNames; if (@sortedFileNames) { print "$_\n" for @sortedFileNames; #unlink @sortedFileNames; }

This stats each file for the modification time, using it in the sort. Also, note that a file glob's used to read directory files...

Replies are listed 'Best First'.
Re^4: Delete all but the most recent backup file
by jagexCoder (Novice) on Jan 28, 2013 at 00:58 UTC
    Hi thanks, that works great! I modified the regular expression to the file naming format that we use at work. I just noticed that the system of sorting and preserving the latest backup and deleting the rest is the most efficient - my supervisor and dad (he's a programmer) said the same thing. I don't know why I stuck with the idea of using flags, I guess it's the little mistakes the not-that-experienced programmers make. This is a good learning experience! I'll figure out the syntax related to sorting that has been implemented and understand it fully. Thanks again to both of you - take care!

      Here is an alternative idea

      Archive the backups for a month before deleting them (like zip/7-zip)

      Since the files are nearly identical, it should compress really well, so in the same space you have of 24hrs of backups you can have ~20 days of backups (one zip per day), and if you combine those zip/day backups into a single archive, you'll have space for more days :)

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1015593]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (5)
As of 2024-04-19 15:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found