#!/usr/bin/perl
# Proste do zamiany nazw plikow .mp3. Wycina krzaczki spacje...
# kaneda@bohater.org

# Jako parametr podajemy czesci pliku ktore maja byc totalnie wyciete

opendir(KATALOG,".");
@pliki = grep { /\.mp3$/ } readdir KATALOG;
closedir(KATALOG);

foreach $plik (@pliki)
{
$plik2 = $plik;
$plik2 =~ tr/ /_/;
$plik2 =~ tr/()`'[]/-/;
$plik2 =~ tr/[A-Z]/[a-z]/;
$plik2 =~ tr/!@#$%^&*":;?\/\\/_/;

$plik2 =~ s/,/-/;
$plik2 =~ s/_-/-/;
$plik2 =~ s/-_/-/;
$plik2 =~ s/--/-/;
$plik2 =~ s/__/_/;
$plik2 =~ s/--/-/;
$plik2 =~ s/__/_/;
$plik2 =~ s/--/-/;
$plik2 =~ s/__/_/;
$plik2 =~ s/1_/1-/;
$plik2 =~ s/2_/2-/;
$plik2 =~ s/3_/3-/;
$plik2 =~ s/4_/4-/;
$plik2 =~ s/5_/5-/;
$plik2 =~ s/6_/6-/;
$plik2 =~ s/7_/7-/;
$plik2 =~ s/8_/8-/;
$plik2 =~ s/9_/9-/;
$plik2 =~ s/0_/0-/;
$plik2 =~ s/1\./1-/;
$plik2 =~ s/2\./2-/;
$plik2 =~ s/3\./3-/;
$plik2 =~ s/4\./4-/;
$plik2 =~ s/5\./5-/;
$plik2 =~ s/6\./6-/;
$plik2 =~ s/7\./7-/;
$plik2 =~ s/8\./8-/;
$plik2 =~ s/9\./9-/;
$plik2 =~ s/0\./0-/;

$plik2 =~ s/-1/1/;
$plik2 =~ s/-2/2/;
$plik2 =~ s/-3/3/;
$plik2 =~ s/-4/4/;
$plik2 =~ s/-5/5/;
$plik2 =~ s/-6/6/;
$plik2 =~ s/-7/7/;
$plik2 =~ s/-8/8/;
$plik2 =~ s/-9/9/;
$plik2 =~ s/-0/0/;

$plik2 =~ s/_-/-/;
$plik2 =~ s/-_/-/;
$plik2 =~ s/--/-/;
$plik2 =~ s/__/_/;
$plik2 =~ s/--/-/;
$plik2 =~ s/__/_/;
$plik2 =~ s/--/-/;
$plik2 =~ s/__/_/;
$plik2 =~ s/-_/-/;

if ( @ARGV[0] )
{
$plik2 =~ s/@ARGV[0]//;
}

if ( @ARGV[1] )
{
$plik2 =~ s/@ARGV[1]//;
}

if ( @ARGV[2] )
{
$plik2 =~ s/@ARGV[2]//;
}

if ( @ARGV[3] )
{
$plik2 =~ s/@ARGV[3]//;
}

$plik2 =~ s/sn-t/snt/;
$plik2 =~ s/don-t/dont/;

$plik2 =~ s/-\.mp3/\.mp3/;
$plik2 =~ s/\._/_/;
$plik2 =~ s/\._/_/;
$plik2 =~ s/-mp3/.mp3/;



print "ZAMIENIAM:\n" , $plik , "\n" , $plik2 , "\nTAK ? y/n [y]";
chomp ($a = <STDIN>);
if ( $a eq "y" || $a eq "" )
{ rename ($plik , $plik2 ); print "ZMIENIONE\n"; }
else
{ print "NIE ZMIENIONE\n";}
}
