#!/usr/local/bin/perl
#
# [check-dir-for-burning-cds.pl] 07.04.1998 René Scholz <Voland@Jena.Thur.de>
#
# Use: checkt ein Verzeichnis (Unix) daraufhin, ob es Kollisionen bei den
#      Dateinamen gibt, die beim CD-Brennen einen Fehler verursachen bei der
#      Dateinamensersetzung (ISO usw.)

($NAME=$0) =~ s|.*/||;  # get basename from $0;
$USAGE="Usage:\t\t$NAME [options] <Directory> \n\n"
  . "options:\t-p  check for files with more than 1 '.'\n"
  . "\n";


$NO3=1;
$DIR=shift(@ARGV);
if($DIR=~/--?[hH]/) { print $USAGE; exit(0); }
if($DIR eq "-p")  { $NO3=0; $DIR=shift(@ARGV); }
if($DIR eq "") { chomp($DIR=`pwd`); }

print "Checking Directory $DIR ...\n\n";
chdir $DIR or die "Cannot chdir to $DIR: $!\n";

open(LISTING, "find . |");
while (chomp($_=uc(<LISTING>)))
  {
    s/\.\/?//;
    if(! exists $OTTO{"$_"}) { $OTTO{"$_"}=1; }
    else
      {
	print "Kollision bei: $_\n";
      }
    if($NO3==0)
      {
	@_=split("/",$_);
	$r=pop(@_);
	@t=split(/\./, $r);
	print "Mehrere Punkte: $_\n" if($#t >1);
      }
    
  }