shell Node.js子进程执行命令作用域

ar5n3qh5  于 2022-12-13  发布在  Shell
关注(0)|答案(1)|浏览(164)

我需要在MacOS shell上执行以下字符串:solana --help它在macOS终端中运行良好,即使我使用cd进入我的项目目录。
上述应用程序也在我的全局路径上。
我在vscode项目中开启了下列程式码:

const util = require('util');
const exec = util.promisify(require('child_process').exec);

(async () => {
    const { stdout, stderr } = await exec('solana --help');
    console.log('stdout:', stdout);
    console.log('stderr:', stderr);
})();

程序不会显示预期的输出,而是显示以下错误:
https://i.stack.imgur.com/fseXV.png

6za6bjd0

6za6bjd01#

您需要在命令行中键入whereis solana以找到该可执行文件的完整路径,然后在代码中替换该路径,即:

const { stdout, stderr } = await exec('full_path_to_solana --help');

那就给我们看看结果。

相关问题