Bun

GuidesProcesses

Read stderr from a child process with Bun

When using Bun.spawn(), the child process inherits the stderr of the spawning process. If instead you'd prefer to read and handle stderr, set the stderr option to "pipe".

const proc = Bun.spawn(["echo", "hello"], {
  stderr: "pipe",
});
proc.stderr; // => ReadableStream

To read stderr until the child process exits, use the Bun.readableStreamToText() convenience function.

const proc = Bun.spawn(["echo", "hello"], {
  stderr: "pipe",
});

const errors: string = await Bun.readableStreamToText(proc.stderr);
if (errors) {
  // handle errors
}

See Docs > API > Child processes for complete documentation.