linux-l: Tip aus der Unix-Werkzeugkiste gesucht...

Robert C. Helling helling at aei-potsdam.mpg.de
Mo Okt 23 16:47:33 CEST 2000


On Mon, 23 Oct 2000, Henrik Hempelmann wrote:

> Carsten Wartmann wrote:
> > 
> > Hi,
> > 
> > ich habe das Problem aus einem Haufen Files die herauszusuchen, die
> > unter Windows den gleichen Dateinamen haben sich aber unter linux
> > wg. der Gross/Kleinschreibung unterscheiden....
> > 
> > Hat dazu jemand eine Idee? Ich glaube gleich hagelts wieder Perl...
> 
> das geht auch ganz einfach ohne Perl:
> 
> find . -print | uniq -di
> 
> 	henrik

Fast, um mal etwas spitzfindig zu sein: Deine Loesung praesentiert nur die
case insensitiven Win Bilder der case-vergiss Abbildung. Gefragt waren
aber die case sensitiven Urbilder.

Also doch Perl:

#!/usr/local/bin/perl

while(<>){
	if($original{lc($_)}){
		$merken{$_} = 'ddd';
		$merken{$original{lc($_)}} = 'ddd';
	}
	else{
		$original{lc($_)} = $_;
	}
}
foreach (keys %merken){
	print "$_\n";
}

Muesste es tun, ist aber nicht ausprobiert (es erwartet die Dateinamen in
der STDIN oder in einer Datei auf der command line). Dabei habe ich
angenommen, dass windows nur die Gross- und Kleinschreibung mangelt und
nicht sonstige Dinge tut, wie zB 8+3 Buchstaben oder sonstiges. Sonst ist
lc durch eine geegnete subroutine zu ersetzen.

Robert

-- 
.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oOo.oO
Robert C. Helling        Institut fuer Physik
                         Humboldt-Universitaet zu Berlin
print "Just another      Fon +49 30 2093 7964      
       stupid .sig\n";	 http://www.aei-potsdam.mpg.de/~helling



Mehr Informationen über die Mailingliste linux-l