in reply to backtick iterpolation issue
If there's no good reason not to, you should use a CPAN module for a task like this. Someone else has already done all the work!! Here's one way:
#!/usr/bin/env perl use strict; use warnings; use 5.010; use Path::Iterator::Rule; my $file = 'ABC - The Lexicon of Love (1982) {1996 Remaster} V0what.cd +/16 Look Of Love (Live).mp3'; my @dirs = '/Volumes/public_files/music'; my $rule = Path::Iterator::Rule->new; $rule->name($file); my $search = $rule->iter( @dirs ); while ( my $found = $search->() ) { say $found; } __END__
The good thing about using a module like this is that when you figure out some new requirement, like for example you only want to search three levels down, or the file has to be a certain minimum or max size, or has to contain a certain string etc etc, these are all built-in functions, so you can add your new functionality without hardly having to break a sweat:
$rule->name($file) ->size("> 1000");
|
|---|