In string, @chars now must be written as \@chars at ./adduser.pl line 22, near "$file; print "Username Invalid\n"; exit; } # Generate Random Password And Encrypt It my @chars" Global symbol "@chars" requires explicit package name at ./adduser.pl line 22. Global symbol "$password" requires explicit package name at ./adduser.pl line 22. Global symbol "$chars" requires explicit package name at ./adduser.pl line 22. In string, @chars now must be written as \@chars at ./adduser.pl line 22, near "$chars [rand @chars" Global symbol "@chars" requires explicit package name at ./adduser.pl line 22. syntax error at ./adduser.pl line 33, near "redo unless /[" (Might be a runaway multi-line // string starting on line 22) Unmatched right curly bracket at ./adduser.pl line 35, at end of line syntax error at ./adduser.pl line 35, near "}" Execution of ./adduser.pl aborted due to compilation errors.