详细介绍下child_process.exec
时间: 2023-06-02 18:02:41 浏览: 239
child_process.exec()是Node.js中的一个内置模块,它允许在子进程中执行 shell 命令。该方法会创建一个子进程,执行指定的命令,并返回一个ChildProcess对象。
语法:
child_process.exec(command[, options][, callback])
参数:
- command:要执行的命令,可以是任何shell命令。
- options:可选参数,一个对象,用来配置子进程的一些选项。例如:cwd:设置子进程的当前工作目录;env:设置子进程的环境变量;encoding:设置子进程stdout和stderr输出的编码方式等。
- callback:可选参数,一个回调函数,当子进程完成时会调用这个函数,回调函数有三个参数:error(如果有错误,这个参数是一个Error对象)、stdout(子进程的输出)、stderr(子进程的错误输出)。
示例:
```javascript
const { exec } = require('child_process');
exec('ls -l', (error, stdout, stderr) => {
if (error) {
console.error(`exec error: ${error}`);
return;
}
console.log(`stdout: ${stdout}`);
console.log(`stderr: ${stderr}`);
});
```
上面的代码执行了一个ls -l命令,并将结果输出到控制台。如果命令执行失败,将打印错误消息。如果命令执行成功,则将输出子进程的stdout和stderr输出。
阅读全文