如何将缓冲区作为管道输入传递给节点脚本
How do I pass a buffer as a piped input to a node script?
我想将缓冲区作为管道输入发送到终端上的节点脚本。因此,我使用以下代码创建了一个脚本 ping.js:
#!/usr/local/bin/node
function bufferDemo() {
var objBuffer = new Buffer(29);
objBuffer.writeUInt32LE(29,0);
objBuffer.write('{message:"pingfrompingjs"}',4);
return objBuffer;
}
bufferDemo();
然后我在命令行上运行以下命令:
./ping.js | ./index.js
我也试过:
./ping.js > out.json
out.json是空的,所以很明显ping.js没有传递缓冲区。我如何实现这一点?我对节点相对较新。
你实际上并没有通过返回函数中的值来输出任何东西。你应该写信给process.stdout
:
process.stdout.write(objBuffer)
从
函数return
没有任何效果。如果你想让你的命令输出一些东西,你必须写信给stdout
(或stderr
):
process.stdout.write(objBuffer);
相关文章:
- 为什么正文标记后的脚本标记在子节点中计数
- 公共脚本文件上的访问节点文件
- 为什么不't克隆节点<脚本>执行标记
- 不存在的XML节点破坏了我的脚本
- 如何从节点脚本中放入REPL
- 如何在节点上运行的脚本中使用 jsdoc.js
- 在节点脚本中,如何监视文件的更改并获取更新的内容
- 是否可以从网页运行节点脚本
- 如何将缓冲区作为管道输入传递给节点脚本
- 如何使用 shell 脚本文件运行我的节点脚本
- 如何从浏览器将数据发送到节点脚本
- 节点脚本需要向调用它的 Angular 服务返回成功/失败
- 如何在节点脚本中重用Angular模块
- 将mac节点脚本转换为windows
- 使用ajax与现有节点脚本通信
- 使用async中断节点脚本
- 当向数据库插入大量记录时,我应该如何编写节点脚本以最小化内存使用
- 如何在html内正确引用节点脚本模块
- 节点脚本不会通过 https 运行
- 从文件内部执行节点脚本