windows - 如何在 Perl 脚本中的 Windows 控制台上询问密码?

标签 windows perl passwords windows-console

我试过下面的代码

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";

它确实要求输入密码并且不回显答案,但它会跳过后面的 。我想这是 Term::ReadPassword::Win32 中的一个错误,所以我想知道是否有另一个模块可以在 Windows 上运行良好?

最佳答案

http://www.perlmonks.org/?node_id=886306报告相同的问题并使用 Term::ReadKey 提供替代的读取密码实现。根本问题是 this bug in Win32::Console ,这可以通过重新打开 STDIN 和/或 STDOUT 来解决。

关于windows - 如何在 Perl 脚本中的 Windows 控制台上询问密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8911574/

相关文章:

regex - sed 正则表达式及其替代方案在 Solaris 上不起作用

php - 尝试解密存储在 MySql 中的密码

windows - 将命令的输出保存在命令行中的变量或临时文件中

perl - DBD::Pg 中的手动事务管理

perl - 如何设置 `link_to` mojolicious 助手的查询参数?

javascript - 是否可以在不刷新窗口的情况下进行 "password"验证?

security - jBCrypt 与 checkpw 的严重问题(不应该返回 true?)

c++ - 从外部应用程序附加子窗口时的消息循环(泵)

c++ - 对于普通优先级进程,我可以将单个线程的优先级设置为 15 以上吗?

php - PHP 中的文件组(使用 chgrp() 更改)是什么?