in reply to Selecting Password

>  system qq {echo -e "$newpassword\n$newpassword" | passwd $username};

I'd say, don't use echo via the shell, use open to pipe directly.

For three or more arguments if MODE is |- , the filename is interpreted as a command to which output is to be piped, and if MODE is -| , the filename is interpreted as a command that pipes output to us. In the two-argument (and one-argument) form, one should replace dash (- ) with the command. See Using open() for IPC in perlipc for more examples of this. (You are not allowed to open to a command that pipes both in and out, but see IPC::Open2 , IPC::Open3 , and Bidirectional Communication with Another Process in perlipc for alternatives.)

Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery FootballPerl is like chess, only without the dice

Replies are listed 'Best First'.
Re^2: Selecting Password
by cbtshare (Monk) on Jan 31, 2020 at 02:54 UTC
    Thank you , I have implemented that into y code . But upon testing , I fear that the pasword generator would unluckily input a \ at the end of a password and it would cause the script to fail. Example  my $newpassword='1232!@#%][)(+/n)(\' fails in my script .Thus I thought it would be more prudent to select from safe symbols that wont fail no matter in what combination they are used.Hence why I need my above sample script to work and present a password with selected special character values everytime it runs
      > would unluckily input a \ at the end of a password

      Please show an SSCCE to reproduce your problem.

      My first guess is that you need to adjust the $\ aka $OUTPUT_RECORD_SEPARATOR

      Cheers Rolf
      (addicted to the Perl Programming Language :)
      Wikisyntax for the Monastery FootballPerl is like chess, only without the dice