Mercurial > ec-dotfiles
view bin/putcrc.pl @ 453:c3bfb45757e9
FreeBSD grep is GNU grep. Well, up to 9.x.
author | Edho Arief <edho@myconan.net> |
---|---|
date | Fri, 15 Feb 2013 18:18:18 +0900 |
parents | 5bafb912837e |
children |
line wrap: on
line source
#!/usr/bin/perl use warnings; use strict; use String::CRC32; my @files = @ARGV or print("Usage: ren file1 ... fileN\n") && exit(1); my $skip=0; foreach (@files) { my $newname = $_; open(FILE,$_); my $crc=sprintf("%08X",crc32(*FILE)); close(FILE); $newname =~ s/(.*)\.([^.]*)/$1 [$crc].$2/; $newname =~ s/\] (\[$crc)/]$1/; print(qq($_: $newname already exists, skipping\n)) and next() if -e $newname and $_ ne $newname; if ($_ eq $newname) { print("$_: no need to rename, skipping\n"); } else { if($skip==1) { print("$_ --> $newname\n"); } else { if(rename($_, $newname)) { print("$_ -> $newname\n"); } else { print("$_: rename failed"); } } } next(); } exit(0);