Если вы хотите передать некоторые аргументы, вы можете использовать:
const { execFile } = require('child_process');
const child = execFile('node', ['--version'], (error, stdout, stderr) => {
if (error) {
throw error;
}
console.log(stdout);
});
Если вы хотите передать пользовательский поток в качестве стандартного ввода дочернему процессу, используйте spawn:
const { spawn } = require('child_process');
// Child will use parent's stdios
spawn('prg', [], { stdio: 'inherit' });
// Spawn child sharing only stderr
spawn('prg', [], { stdio: ['pipe', 'pipe', process.stderr] });
// Open an extra fd=4, to interact with programs presenting a
// startd-style interface.
spawn('prg', [], { stdio: ['pipe', null, null, null, 'pipe'] });
Все примеры из документов: https://nodejs.org/api/child_process.html#child_process_options_stdio