首页 > 解决方案 > NodeJS child_process.spawn() 打开终端时出错:未知

问题描述

我正在尝试使用“child_process”.spawn() 方法从 NodeJS 执行简单的程序“htop”,在我的本地 Ubuntu 桌面上它工作正常,但是当我将代码移动到 Ubuntu 服务器(数字海洋)时,child_process 以代码 1 退出:“打开终端时出错:未知。” 这是简单的代码示例

   const { spawnSync, spawn } = require('child_process');
    const htop = spawn("htop", [], {
        detached: true, 
        shell: false, 
        windowsHide: true,
    });

    htop.stdout.on('data', (dataBuffer) => {
        socket.emit('htop log', dataBuffer.toString());
    });

有人知道应该是什么问题吗?

标签: node.jsterminalchild-processubuntu-server

解决方案


已解决,如果将来有人需要它,只需使用 NodePTY包而不是 child_process.spawn(),它对我来说很好用


推荐阅读