我想使用在NodeJS 0.12中添加的execSync方法,但仍在运行Node脚本的控制台窗口中具有输出。

例如。如果我运行具有以下行的NodeJS脚本,我想在控制台中看到rsync命令“实时”的完整输出:

require('child_process').execSync('rsync -avAXz --info=progress2 "/src" "/dest"');

我知道execSync返回命令的输出,执行后我可以将其打印到控制台,但是这样我就没有“实时”输出了……

最佳答案

如果需要的话,可以传递parent´s stdio to the child process:

require('child_process').execSync(
    'rsync -avAXz --info=progress2 "/src" "/dest"',
    {stdio: 'inherit'}
);

09-26 22:14