在我的电子/ reactjs应用程序中,我正在尝试打开终端并启动一些命令。
我的代码看起来像这样:
const terminal = 'x-terminal-emulator';
const { spawn } = require('child_process');
spawn(terminal);
我的终端打开,但我不知道如何在这个终端中启动命令,如'cd / my / custom / path && ls'
有谁可以帮助我吗 ? :)
Node.js child_process.spawn
命令有一个option来指定你想要使用的shell。
所以我会使用相反的逻辑并在特定的shell中直接启动命令(例如bash):
const { spawn } = require('child_process');
const terminal = '/bin/bash';
let cmd = 'echo $SHELL';
spawn(cmd, { shell: terminal })
.stdout.on('data', (data) => {
console.log(`stdout: ${data}`); //-> stdout: /bin/bash
});