Ho provato il seguente codiceCome chiedere la password sulla console di Windows in uno script Perl?
use strict;
use warnings;
use Term::ReadPassword::Win32 qw(read_password);
my $pw = read_password('pw: ');
print "pw $pw\n";
my $x = <STDIN>;
print "x: $x\n";
Si chiede infatti una password e non eco la risposta, ma poi salta sopra la < STDIN> che lo segue. Immagino che questo sia un bug in Term :: ReadPassword :: Win32 quindi mi chiedo se c'è un altro modulo che funziona bene su Windows?
http://www.perlmonks.org/?node_id=886306 segnala lo stesso problema e fornisce un'implementazione di lettura-password alternativa utilizzando Term :: ReadKey. Il problema di fondo è [questo bug] (https://rt.cpan.org/Public/Bug/Display.html?id=33513#txn-425619) in Win32 :: Console, che può essere aggirato riaprendo STDIN e/o STDOUT. – nandhp
@nandhp perfetto. Grazie. – szabgab
@nandhp Dovresti pubblicare il tuo commento come soluzione. – JRFerguson