2013-03-10 52 views
1

我们有一个使用终端读取密码的Perl脚本。由于终端不可用,此脚本无法在Windows上运行。在Windows上使用Perl读取密码而不使用CPAN包

我们做了一些研究,发现ReadKey/Readline是一个替代方案。但是,这个软件包不是我们默认的Perl安装的一部分。

有没有一种方法可以在不使用终端或ReadKey/Readline的情况下在Perl中读取密码?

+0

其中的Perl分布你在Windows上使用?是ActivePerl还是草莓Perl? – mvp 2013-03-10 07:16:35

+1

“没有CPAN包装?” ...简短的回答,没有。 – 2013-03-10 12:46:01

回答

2

如果你正在寻找没有在终端呼应获取密码的方式,试试这个:

use Term::ReadKey; 
print "Enter password:"; 
ReadMode('noecho'); 
my $password = <STDIN>; 
chomp($password); 

以后,如果要返回到正常端子输入回波,这样写:

ReadMode(0); 

该解决方案需要安装Term::ReadKey,它也适用于Windows。上的ActivePerl安装CPAN模块

相关问题