use File::Find::Rule; my @files = File::Find::Rule->file() ->or( File::Find::Rule->name( '*.xml' ) ->name( '*.htm' ) ) ->in( "." ); foreach $fname (@files) { print $fname; } #### use File::Find::Rule; sub FFR () { 'File::Find::Rule' } my @files = FFR->file() ->or( FFR->name( '*.xml' ) ->name( '*.htm' ) ) ->in( "." ); foreach $fname (@files) { print $fname; }