in reply to Remove (nearly) duplicate files recursively

Just one little efficiency pointer -- you can perform the substitution and check if the file ends in .mp3 with one s/// call:
#!/usr/bin/perl -w use strict; use File::Find; find(\&process, '/Users/Shared/Music'); sub process { my $song = $File::Find::name; my $orig = $song; if ($orig =~ s/ 1\.mp3$/.mp3/ && -e $orig) { ... } }