原文链接: js spawn
上一篇: js execFile
下一篇: js exec
spawn
执行外部程序, 并且需要提供一组参数, 以及一个在进程退出后的输入输入和事件的数据流接口
当你想处理一些会有很多子进程I/O的事情时, 或者当你期望的进程会有大量的输出时, 这种方法提供了一个很好的流式接口, 同样在处理有用户输入的时候相对更加安全
const cp = require('child_process')
const child = cp.spawn('echo', ['hello', 'world'])
child.on('error', console.error)
child.stdout.pipe(process.stdout)
child.stderr.pipe(process.stderr)
使用管道和流的方式对文本单词进行排序
const cp = require('child_process')
// 不能再windows上运行
const child = cp.spawn('echo', ['hello', 'world'])
child.on('error', console.error)
child.stdout.pipe(process.stdout)
child.stderr.pipe(process.stderr)
let cat = cp.spawn('cat', ['t.txt'])
let sort = cp.spawn('sort')
let uniq = cp.spawn('uniq')
cat.stdout.pipe(sort.stdin)
sort.stdout.pipe(uniq.stdin)
uniq.stdout.pipe(process.stdout)