如何将节点CLI程序的输出传递给shell?
我基本上想要做这样的事情:
$ my-node-cli <some-param> | less
请注意, less
就只是一个例子。 我需要它与任何其他* nix命令一起工作。
关于用例的更多信息:
我编写了一个节点CLI包,用于search一些在线资源并将结果输出到shell。 由于结果集可以是巨大的,客户端希望对其执行额外的操作,例如, grep
, head
, tail
, tee
,…任何事情。
我search的范围很广,我只能设法find节点的方式,而不是。 我目前的想法是当我的程序被调用时捕获pipe道的右侧,然后,在获得结果后,使用child_process.exec
执行与pipe道(和我被调用时记得的那部分) child_process.exec
。 不知道是否可以工作?
请注意,每次我的程序被调用时,这是一个新的过程,即程序没有自己的提示。
谢谢
所有你需要做的是在你的应用程序中从STDOUT输出。 这将被发送到下一个程序,如果pipe道。
您可以使用普通的旧console.log()
或process.stdout
stream 。
这是由shell来处理streamredirect,而不是你的应用程序。
- testing同一个函数的并发调用
- 使用sequelize查找“modelA”的所有实例,而不使用“modelB”的相关实例
- 无法将.pem文件导入到Express
- 当使用一串键作为select器进行筛选时,mongoosejs查询失败
- 使用passportjs重置/更改nodejs中的密码
- 将variables传入callback函数
- org.springframework.web.multipart.MultipartException:无法parsing多部分servlet请求…stream意外结束
- 如何从NodeJS中的另一个文件中读取HTML(用于电子邮件正文)
- 如何在Node.js中请求图像和输出图像