- @deprecated Use
Deno.Command
instead.
Represents an instance of a sub process that is returned from
Deno.run
which can be used to manage the sub-process.
Type Parameters
T extends RunOptions = RunOptions
Properties
stderr: T["stderr"] extends "piped" ? Reader & Closer & { readable: ReadableStream<Uint8Array>; } : (Reader & Closer & { readable: ReadableStream<Uint8Array>; }) | null
A reference to the sub-processes stderr
, which allows interacting with
the sub-process at a low level.
stdin: T["stdin"] extends "piped" ? Writer & Closer & { writable: WritableStream<Uint8Array>; } : (Writer & Closer & { writable: WritableStream<Uint8Array>; }) | null
A reference to the sub-processes stdin
, which allows interacting with
the sub-process at a low level.
stdout: T["stdout"] extends "piped" ? Reader & Closer & { readable: ReadableStream<Uint8Array>; } : (Reader & Closer & { readable: ReadableStream<Uint8Array>; }) | null
A reference to the sub-processes stdout
, which allows interacting with
the sub-process at a low level.
Methods
kill(signo?: Signal): void
Send a signal to process.
Default signal is "SIGTERM"
.
const p = Deno.run({ cmd: [ "sleep", "20" ]});
p.kill("SIGTERM");
p.close();
output(): Promise<Uint8Array>
Buffer the stdout until EOF and return it as Uint8Array
.
You must set stdout
to "piped"
when creating the process.
This calls close()
on stdout after its done.
status(): Promise<ProcessStatus>
Wait for the process to exit and return its exit status.
Calling this function multiple times will return the same status.
The stdin
reference to the process will be closed before waiting to
avoid a deadlock.
If stdout
and/or stderr
were set to "piped"
, they must be closed
manually before the process can exit.
To run process to completion and collect output from both stdout
and
stderr
use:
const p = Deno.run({ cmd: [ "echo", "hello world" ], stderr: 'piped', stdout: 'piped' });
const [status, stdout, stderr] = await Promise.all([
p.status(),
p.output(),
p.stderrOutput()
]);
p.close();
stderrOutput(): Promise<Uint8Array>
Buffer the stderr until EOF and return it as Uint8Array
.
You must set stderr
to "piped"
when creating the process.
This calls close()
on stderr after its done.