如何在命令行执行期间设置密码

How to Set Password During Command Line Execution

我正在尝试 运行 通过 SSH 从 Node 执行命令行,但是 运行 root 权限有问题。

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

function set(pin, state) {
  exec('sudo bash -c "do something"', (error, stdout, stderr) => {
    if (error) console.log('code', error.code)
  })
}

当我在没有 sudo 命令的情况下尝试 运行 时,它以 Code 1.

退出

因为最终我想在 API 端点收到请求时 运行 这个脚本,我想 运行 这个命令就像 exec('command', 'password', (err, stdout, err)...

我可以将密码传递给 exec 函数以防止命令行提示吗?

试试这个:

echo 'password' | sudo -S command

请注意,您的密码将保存在历史记录中。