小编Squ*_*ler的帖子

如何获取Node.JS中生成的child_process的输出?

首先,我是一个完整的菜鸟,并且昨天开始使用Node.JS(这也是我多年来第一次使用Linux)所以请保持良好和明确

我目前正在制作Node.JS程序,其中包括启动shell命令(主要是:安装usb驱动器).我正在使用

var spawn = require('child_process').spawnSync;

function shspawn(command) {
    spawn('sh', ['-c', command], { stdio: 'inherit' });
}

shspawn('echo Hello world');
shspawn('mkdir newdir');
Run Code Online (Sandbox Code Playgroud)

这对我来说是一种非常舒适的方式.问题是我想以一种方式存储变量中的"ls"命令的输出,例如

var result = shspawn('ls -l')
Run Code Online (Sandbox Code Playgroud)

我在线阅读了一些例子,但他们很少使用spawn,当他们这样做时,它对我不起作用(我想我可能做错了,但我又是Node中的菜鸟)

如果你们有一个比使用child_process_spawnSync更好的想法,我会对任何想法持开放态度,但我希望尽可能长时间保持我的程序包免费:)

编辑:我需要它同步工作!这就是我开始使用spawnSync的原因.我将使用一些命令,如dd,这需要时间,需要在程序转移到另一个命令之前完全完成.

shell spawn child-process node.js output

9
推荐指数
1
解决办法
9545
查看次数

标签 统计

child-process ×1

node.js ×1

output ×1

shell ×1

spawn ×1