49 lines
1.1 KiB
Markdown
49 lines
1.1 KiB
Markdown
node-sudo
|
|
=========
|
|
|
|
A `child_process.spawn` but with `sudo` in between. The `sudo` password dialog
|
|
is abstracted away so that the calling Node script can interact with the
|
|
program that is run under `sudo` without worrying about it.
|
|
|
|
Synopsis
|
|
--------
|
|
|
|
```javascript
|
|
sudo(args, options)
|
|
```
|
|
|
|
- `args`: An array of arguments to `sudo`. Can be both options (such as `-v`
|
|
or `-E`) and the program to run. Example: `['ls']`.
|
|
|
|
- `options`: An optional object containing options. Recognized options are:
|
|
|
|
- `cachePassword`: Boolean; whether to remember the password between
|
|
invocations or not.
|
|
|
|
- `prompt`: String; what to display to the user when the password is
|
|
needed.
|
|
|
|
- `spawnOptions`: Object; passed on directly to `spawn`. `stdio` or
|
|
`customFds` will be overwritten.
|
|
|
|
Example
|
|
-------
|
|
|
|
```javascript
|
|
var sudo = require('sudo');
|
|
var options = {
|
|
cachePassword: true,
|
|
prompt: 'Password, yo? ',
|
|
spawnOptions: { /* other options for spawn */ }
|
|
};
|
|
var child = sudo([ 'ls', '-l', '/tmp' ], options);
|
|
child.stdout.on('data', function (data) {
|
|
console.log(data.toString());
|
|
});
|
|
```
|
|
|
|
License
|
|
-------
|
|
|
|
MIT
|