在nodejs应用程序中执行bash命令(具有root权限)

Executing bash command (with root access) inside nodejs app

本文关键字:具有 root 权限 命令 bash nodejs 应用程序 执行      更新时间:2023-09-26

我这里有一个小问题。我有一个nodejs应用程序,应该在操作系统的bash中以root权限运行命令,例如

命令是: echo " $密码" |/usr/bin/sudo/usr/bin/abc——关键" $用户名"

下面是我的代码:
const spawn = require('child_process').spawn;
function sendMessage() {
    let username = 'WhoLetTheDogsOut';
    let password = 'Woof!';
    const echo = spawn('echo', [ password ]);
    const abc = spawn('sudo', [ `/usr/bin/abc --key ${username}` ]);
}
sendMessage();

,请帮助。在阅读官方Node child_process.spawn()文档后,我没有得到我错的地方,我一直得到错误:gnokii stderr: sudo:/usr/bin/gnokii——sendsms +375293941196:命令未找到

我希望这对你有帮助,这是一个NPM "node-cmd"包,你可以用nodejs在bash中运行命令,下面是一个例子:

var cmd=require('node-cmd');
cmd.get('echo '+password+' | /usr/bin/sudo /usr/bin/abc --key '+username,
    function(data){
        console.log('The result of the command:'+data)
    }
);

如果需要的话,请给文件权限(chmod)并像root一样运行进程。

这是源代码https://www.npmjs.com/package/node-cmd