close
[-slave] [-onexec 0|1] [-i spawn_id]
| Arguments |
Description |
| -i
spawn_id |
declares
the process to close corresponding to the named spawn_id. |
| -onexec |
determines
whether the spawn id will be closed in any new spawned processes or if
the process is overlayed. To leave a spawn id open, use the value
0. |
| -slave |
Close
slave of process. |
Closes
the connection to the current process.
Most interactive programs will
detect EOF on their stdin and exit; thus close usually suffices to kill
the process as well.
Both expect
and interact will detect when the current process
exits and implicitly do a close. But if you kill the process by,
say, "exec kill $pid”, you will need to
explicitly call close.
The -onexec flag determines
whether the spawn id will be closed in any new spawned processes or if
the process is overlayed. To leave a spawn id open, use the value
0. A non-zero integer value will force the spawn closed (the default)
in any new processes.
The -slave flag closes the
slave associated with the spawn id. (See “spawn -pty”.) When the
connection is closed, the slave is automatically closed as well if still
open.
No matter whether the connection
is closed implicitly or explicitly, you should call wait
to clear up the corresponding kernel process slot. close does not
call wait since there is no guarantee that closing a process connection
will cause it to exit.
This material
is excerpted from the O'Reilly book "Exploring Expect" by Don Libes, and
can also be found in the manpage on many UNIX platforms.
|