Skip to content

Instantly share code, notes, and snippets.

@aquiseb
Last active April 11, 2019 12:55
Show Gist options
  • Select an option

  • Save aquiseb/c0b89a7026d775856b84d259a3f44d7e to your computer and use it in GitHub Desktop.

Select an option

Save aquiseb/c0b89a7026d775856b84d259a3f44d7e to your computer and use it in GitHub Desktop.
const cp = require("child_process");
const cmd = cp.spawn("sudo", ["-S", "ls", "-lh", "/usr"]);
cmd.stdout.on("data", data => {
console.log(`stdout: ${data}`);
});
cmd.stderr.on("data", data => {
console.log(`stderr: ${data}`);
if (String(data).match(/Password:/i)) {
cmd.stdin.write(SUDO_PASSWORD + "\n");
}
});
cmd.on("close", code => {
console.log(`child process exited with code ${code}`);
});
@aquiseb

aquiseb commented Apr 11, 2019

Copy link
Copy Markdown
Author

Use with SUDO_PASSWORD=mypassword node ./node_spawn_sudo_command.js

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment