in reply to FindFiles error in condition

liverpole and andyford have pointed you to probable issues with working directory. I just want to suggest that your if condition in sub srcfind might be simpler to understand and save some typing if you move the alternation into the regular expression and do just one match, like this

if ( -f $file && $file =~ m{\.(?:Z|zip|tar)$} )

I hope this is of use.

Cheers,

JohnGG