in reply to unzip fail using IO::Uncompress::Unzip

File::Slurp has a function to exclude . and ..
my @zd = read_dir($zipdir);

You may need to prepend the directory name to each file before you unzip ("prefix" option).