| Did you know ... | Search Documentation: |
| Send methods |
process ->exitedexit()status of the process (0=success)process ->killedName of the signal. See process ->kill.
->open.
The first argument is used to set process<-name.
A vector created from the remaining arguments is stored in process<-arguments.
Note that the command, nor the arguments are interpreted (like the Unix shell does). The call
new(P, process('awk -f script.awk')).
will search for a file names awk -f script.awk, which of
course it can't find. Instead, use
new(P, process(awk, '-f', 'script.awk')).
or
new(P, process('/bin/sh', '-c', 'awk -f script.awk')).
->open -name|name]SIGTERM ==> term SIGINT ==> int SIGHUP ==> hup
->killed->initialise.
If the process is already running, nothing happens.
When process<->use_tty
equals @on, a
pseudo-tty is allocated, the PCE forks a new process, connecting
standard (error) I/O to this pseudo-terminal. If process<-environment
is given, the environment of the child is manipulated accordingly. If process<-directory
is given the child will change working directory. Finally the child
execvp's (see man execvp()) using the
process<-name
and process<-arguments
from the process
object.
When process<->use_tty
equals @off,
two pipes are created, after which PCE forks. stdin of the process is
associated with one of these pipes, stdout and stderror with the other.
The command is started the same way as with process<->use_tty @on.
->initialise ->use_tty -name|int*-record_separator->kill’s
the process.<-use_tty
variable. Checks that the process is not currently running.
->open