1

目标

我想在 nodejs 中显示图形密码提示以提升权限,从而获得将文件内容复制到另一个文件内容的权力,但最后一个归 root 所有。

在实现中,我尝试与函数dd一起执行它的参数。gksudoexec()

exec = require('child_process').exec

printall = function (error, stdout, stderr) {
  console.log('stdout: ' + stdout);
  console.log('stderr: ' + stderr);
  if (error) {
    console.log('exec err: ' + error);
  }
}

exec("gksudo dd if=/home/user/minor.txt of=/home/user/major.txt", printall)

错误

但我总是失败,没有充分的理由。

它说,

stdout: 
stderr: 
exec err: Error: Command failed: /bin/sh -c gksudo dd if=/home/user/minor.txt of=/home/user/major.txt

如果我将命令复制到终端中,它会错过双引号而gksudo只运行。好吧,在 nodejs 中,它只是失败了。

笔记

我最初开发 Atom 包。这是我第一次,所以,我发现了不同版本的 Node(或 IOJ?)。我在 Atom 中执行整个代码。

问题

如果你期待一个明确的问题,那么,可能

如何gksudo在 node.js 中执行以运行其他命令以及参数?

4

0 回答 0