philbo
09-11-2001, 15:34
hallo,
ich hab ein perl script geschrieben um mp3-dateien in einem directory zu vergleichen. ich hab nun zwei mal dasselbe array und will in 2 schleifen jede mit jeder datei vergleichen. natürlich nicht mit sich selbst, daher will ich vorher überprüfen ob die filenames gleich sind:
----------------------------
foreach $filename1 (@inhalt1) {
#erste schleife...
print STDERR "\nfilename1 $filename1";
foreach $filename2 (@inhalt2) {
print STDERR "\ncheck $filename1 $filename2";
unless($filename1 == $filename2) {
print STDERR "\nFILENAME2: $filename2";
}
}
----------------------------------
anstatt unless( ... hab ich auch schon "if ($filename1 != filename2)" probiert, mit dem gleichen ergebnis:
------------------------------------
[bodi@phil dupmp3]$ ./dupmp3.pl
filename1 kittie - Brackish (live Ozzfest).mp3
check kittie - Brackish (live Ozzfest).mp3 .
check kittie - Brackish (live Ozzfest).mp3 ..
check kittie - Brackish (live Ozzfest).mp3 kittie - Brackish (live Ozzfest).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - Charlotte (Alternate Mellow Version).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - Charlotte (Liquid Depression Remix).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - Electric.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - Feel Good (Featuring Serj Tankian From System Of A Down And Morgan Lander From Kittie).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - immortal.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - jonny.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - kittie and korn this town m.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - live (explicit version).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - mouth full of poison.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - mouthful of poison.mp3
---------------------------------
usw.
wie man sieht wird trotz nicht übereinstimmenden filenames das "print STDERR "\nFILENAME2: $filename2";" nicht aufgerufen. warum?
ich hab ein perl script geschrieben um mp3-dateien in einem directory zu vergleichen. ich hab nun zwei mal dasselbe array und will in 2 schleifen jede mit jeder datei vergleichen. natürlich nicht mit sich selbst, daher will ich vorher überprüfen ob die filenames gleich sind:
----------------------------
foreach $filename1 (@inhalt1) {
#erste schleife...
print STDERR "\nfilename1 $filename1";
foreach $filename2 (@inhalt2) {
print STDERR "\ncheck $filename1 $filename2";
unless($filename1 == $filename2) {
print STDERR "\nFILENAME2: $filename2";
}
}
----------------------------------
anstatt unless( ... hab ich auch schon "if ($filename1 != filename2)" probiert, mit dem gleichen ergebnis:
------------------------------------
[bodi@phil dupmp3]$ ./dupmp3.pl
filename1 kittie - Brackish (live Ozzfest).mp3
check kittie - Brackish (live Ozzfest).mp3 .
check kittie - Brackish (live Ozzfest).mp3 ..
check kittie - Brackish (live Ozzfest).mp3 kittie - Brackish (live Ozzfest).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - Charlotte (Alternate Mellow Version).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - Charlotte (Liquid Depression Remix).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - Electric.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - Feel Good (Featuring Serj Tankian From System Of A Down And Morgan Lander From Kittie).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - immortal.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - jonny.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - kittie and korn this town m.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - live (explicit version).mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - mouth full of poison.mp3
check kittie - Brackish (live Ozzfest).mp3 kittie - mouthful of poison.mp3
---------------------------------
usw.
wie man sieht wird trotz nicht übereinstimmenden filenames das "print STDERR "\nFILENAME2: $filename2";" nicht aufgerufen. warum?