Mercurial > ec-dotfiles
view bin/putcrc.pl @ 526:f579b5310a1b
Add script to map linux ata drive numbering.
author | edogawaconan <me@myconan.net> |
---|---|
date | Sat, 09 Aug 2014 00:24:45 +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);