在模块kakasi.js中,我正在使用node.js spawn
将echo
标准输出通过管道传递给kakasi流程标准输入,就像
var args = ['-i','euc','-Ha','-Ka','-Ja','-Ea','-ka','-s','-iutf8','-outf8'];
var data="退屈であくびばっかしていた毎日";
// main process kakasi
var child = require('child_process').spawn('kakasi', args, {});
child.stdout.on('data', function (_data) { console.log( new Buffer(_data, 'utf-8').toString() ) } )
// echo process
var echo = require('child_process').spawn('echo', [data], {})
echo.stdout.pipe(child.stdin);
输出taikutsu deakubibakkashiteita mainichi
。
我想使之具有交互性,因此在进行
之类的操作时应避免使用echo
child.stdin.write(data+'\r\n');
直接在主进程stdin
上写而不是使用echo
管道,但是我不能摆脱它。如果可以帮助理解C如何处理stdin
和stdout
•