如何在expect模块中将数据发送到生成的进程,因此它在终端上是不可见的

时间:2014-07-14 13:03:57

标签: perl perl-module

我有一个简单的程序要求输入密码,当我产生这个过程并期待密码' ,如何发送密码进行处理,使其在终端中不可见。

密码程序

(login.c)
#include<stdio.h>
int main() 
{
int a;
printf("enter password\n");
scanf("%d",&a);
return 0;
}

# gcc login.c

perl程序

ask_passwd.pl

#! /usr/bin/perl -w
use strict;
use Expect;
my $passwd=Expect->spawn("./a.out");
$passwd-> expect(10,'-re',"password" =>sub{ $passwd-> send("12345\n"););



# perl ask_passwd.pl

程序输出

enter password
12345

如何发送密码以便不显示.....?

0 个答案:

没有答案