-
child_process.exec()
: этот метод запускает команду оболочки и буферизует выходные данные. Он предоставляет функцию обратного вызова для обработки вывода команды и любых ошибок. -
child_process.spawn()
: этот метод запускает новый процесс с предоставленной командой и аргументами. Он возвращает поток, который можно использовать для чтения выходных данных команды и прослушивания событий. -
child_process.execFile()
: этот метод аналогиченexec()
, но позволяет указать исполняемый файл напрямую, не полагаясь на системная оболочка. -
child_process.spawnSync()
: этот метод представляет собой синхронную версиюspawn()
. Он блокирует выполнение до завершения команды и возвращает статус вывода и выхода.
Вот пример использования метода exec()
для запуска команды оболочки в Node.js:
const { exec } = require('child_process');
exec('ls -l', (error, stdout, stderr) => {
if (error) {
console.error(`Error: ${error.message}`);
return;
}
if (stderr) {
console.error(`stderr: ${stderr}`);
return;
}
console.log(`stdout: ${stdout}`);
});
В этом примере выполняется команда ls -l
(список файлов в длинном формате) и выводятся выходные данные на консоль.