Skip to main content
Version: Next

ChildProcess

Child process spawned from command.

Accessors​

execPath​

Get Signature​

get execPath(): string;
Returns​

string


exitStatus​

Get Signature​

get exitStatus(): ChildProcessExitStatus;

Get child process exit status.

Example​
const child = new Rsvim.proc.Command("ls").spawn();
await child.wait();
const exitStatus = child.exitStatus;
Returns​

ChildProcessExitStatus

It returns exit status if the child process is already finished, otherwise it returns null.


isDisposed​

Get Signature​

get isDisposed(): boolean;

Child process is already completed.

Example​
const child = new Rsvim.proc.Command("ls").spawn();
{
await using usedChild = child;
Rsvim.cmd.echo(usedChild.isDisposed); // false
}
Rsvim.cmd.echo(usedChild.isDisposed); // true
Returns​

boolean


options​

Get Signature​

get options(): CommandOptions;
Returns​

CommandOptions


stderr​

Get Signature​

get stderr(): ChildProcessReadableStream;
Returns​

ChildProcessReadableStream


stdout​

Get Signature​

get stdout(): ChildProcessReadableStream;
Returns​

ChildProcessReadableStream

Methods​

[asyncDispose]()​

asyncDispose: Promise<void>;

Wait for the child process finish with await using API instead of wait.

Returns​

Promise<void>

It returns nothing.


wait()​

wait(): Promise<ChildProcessExitStatus>;

Wait for child process complete.

Returns​

Promise<ChildProcessExitStatus>

It returns a child process exit status.

Throws​

Throws Error if the child process is already finished, or failed to wait.

Example​

try {
const cmd = new Rsvim.proc.Command("ls");
const child = cmd.spawn();
const output = await child.stdout.text();
const exitStatus = await child.wait();
Rsvim.cmd.echo(`"ls" command is completed successfully: ${exitStatus.success}.`);
} catch (e) {
Rsvim.cmd.echo(`Failed to run "ls" command.`);
}