child_process.execSync を使用しますが、出力はコンソールに保持されます 質問する

child_process.execSync を使用しますが、出力はコンソールに保持されます 質問する

NodeJS 0.12 で追加されたメソッドを使用したいのですexecSyncが、Node スクリプトを実行したコンソール ウィンドウに出力が引き続き表示されます。

たとえば、次の行を含む NodeJS スクリプトを実行する場合、rsyncコンソール内でコマンド「live」の完全な出力を確認したいと思います。

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

execSyncコマンドの出力が返され、実行後にそれをコンソールに出力できることは理解していますが、この方法では「ライブ」出力が得られません。

ベストアンサー1

あなたは親プロセスのstdioを子プロセスへそれがあなたの望みなら:

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

おすすめ記事