如何在Mac终端中将节点stdout的输出管道输出到open命令?

时间:2016-01-26 18:15:58

标签: node.js macos terminal

我有一个节点项目,我在stdout的终端中将文件名输出到process.stdout.write(filename + '\n');。如何使用默认图像查看器将此输出传输到open命令或其他命令以打开文件(在本例中为图像)?

1 个答案:

答案 0 :(得分:1)

正如Mark Setchell在评论中指出的那样,您需要通过-a <appname>打开具有特定应用程序的文件。
但是,您需要将文件传递给stdout而不仅仅是文件名,例如:

var fs = require('fs');

fs.createReadStream("./test.jpg").pipe(process.stdout);

然后你的node yourNodeFile.js | open -f -a Preview.app