Simple versioned backup
Apr. 8th, 2005 03:29 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
This Perl script adds a time stamp to the file name and copies the file to a backup directory.
#!perl -w use strict; require 5.004; use File::Basename; use File::Copy; use File::Spec; my $BACKUPDIR = 'c:\\backup'; sub doBackup { my $fname = shift; my $basename = basename $fname; my $destbase = sprintf("%08X-%s", time, $basename); my $destname = File::Spec->catfile($BACKUPDIR, $destbase); print "Backing up $fname to $destname...\n"; copy($fname, $destname) or die "copy failed: $!\n"; } @ARGV > 0 or die "Usage: $0 files-to-backup\n"; for my $fname (@ARGV) { doBackup $fname; } __END__