我是Perl编程的新手。目前我有一个理解一些代码的任务。
我必须了解Perl Expect代码,在这段代码中有一行代码,如下所述:
my $ exp = new Expect;
$ EXP->产卵( “ス”);
我的理解是第1行告诉我们创建一个类和第2行的实例,创建一个子进程。
如果有人更清楚地向我解释,我会非常感谢他们。
答案 0 :(得分:3)
首先,让我帮助你自己:
您正在使用CPAN:Expect上的Expect模块。
从严格的语法角度来看,你所做的只是调用两个方法:
my $exp = Expect->new(); #Yes, the new Expect is a shorthand version
$exp->spawn("su");
这两种方法都记录在CPAN中,并且它们确实做你所期望的 (没有双关语)他们要做的事情:第一个创建一个Expect对象,第二个一个生成一个没有任何参数的进程“su”。
现在你可以使用send和expect方法将字符串发送到进程,或者等到它要求输入。直接来自CPAN示例:
# send some string there:
$exp->send("string\n");
# then do some pattern matching with either the simple interface
$patidx = $exp->expect($timeout, @match_patterns);