|
 |
expect_expectl (no version information, might be only in CVS) expect_expectl -- Waits until the output from a process matches one
of the patterns, a specified time period has passed, or an EOF is seen
Описаниеmixed expect_expectl ( resource expect, array cases )
Waits until the output from a process matches one of the patterns,
a specified time period has passed, or an EOF is seen.
Список параметров
- expect
An Expect stream, previously opened with
expect_popen().
- cases
An array of expect cases. Each expect case is an indexed array,
as described in the following table:
Таблица 1. Expect Case Array Index Key | Value Type | Description | Is Mandatory | Default Value |
---|
0 | string | pattern, that will be matched against the output from the stream | yes | | 1 | mixed | value, that will be returned by this function, if the pattern matches | yes | | 2 | integer |
pattern type, one of:
EXP_GLOB,
EXP_EXACT
or
EXP_REGEXP
| no | EXP_GLOB |
Примеры
Пример 1. expect_expectl() example
<?php
ini_set ("expect.timeout", 30);
$stream = popen ("expect://scp user@remotehost:/var/log/messages /home/user/messages.txt", "r");
$cases = array (
array (0 => "password:", 1 => PASSWORD),
array (0 => "yes/no)?", 1 => YESNO)
);
while (true) {
switch (expect_expectl ($stream, $cases))
{
case PASSWORD:
fwrite ($stream, "password\n");
break;
case YESNO:
fwrite ($stream, "yes\n");
break;
case EXP_TIMEOUT:
case EXP_EOF:
break 2;
default:
die ("Error has occurred!\n");
}
}
fclose ($stream);
?>
|
|
expect_expectl
There are no user contributed notes for this page.
| |