if (!mkdir($dir, $perm) and $! =~ /^File exists/) { warn "($dir already exists)"; } elsif ($! =~ /^Permission denied/) { warn "(can't create $dir)"; } # ...