foreach (@perms) { warn "Invalid permission setting detected in $_" unless /^(([ugoa]+=[rwxsS]+)(?(?!$),))+$/; }