在Node.js的Child-Process模块中使用spawn方法时,编码/转义的使用可以通过设置options对象中的encoding属性来实现。下面是一个使用编码/转义的示例代码:
const { spawn } = require('child_process');
// 子进程命令
const command = 'echo';
// 子进程参数
const args = ['Hello, World!'];
// 创建子进程
const child = spawn(command, args, { encoding: 'utf8' });
// 监听子进程的stdout事件
child.stdout.on('data', (data) => {
console.log(`子进程输出:${data}`);
});
// 监听子进程的stderr事件
child.stderr.on('data', (data) => {
console.error(`子进程错误输出:${data}`);
});
// 监听子进程的close事件
child.on('close', (code) => {
console.log(`子进程退出码:${code}`);
});
在上述示例中,我们使用spawn方法创建了一个子进程,执行了一个echo命令,并传递了参数"Hello, World!"。通过设置options对象中的encoding属性为'utf8',我们指定了子进程的输出编码为UTF-8。
然后,我们分别监听了子进程的stdout、stderr和close事件。在stdout事件中,我们打印出子进程的输出;在stderr事件中,我们打印出子进程的错误输出;在close事件中,我们打印出子进程的退出码。
请注意,根据实际需求,您可能需要根据子进程的具体情况来设置编码/转义选项。此外,您还可以在options对象中设置其他选项,如cwd(子进程的当前工作目录)、env(子进程的环境变量)等。
上一篇:编码/解码Unicode和套接字