четверг, 11 июля 2013 г.

Получение параметров в скрипты. optimist.js commander.js Module

1. Самый простой способ разбираться со стороковым значением process.argv.



2. Чуть поизощренней optimist.js, он уже распарсивает минусы до имени ключа и мы можем просто обращаться к ключу по его имени.
// node script --port=1335
var argv = require('optimist').argv;

...
server.listen(argv.port, '127.0.0.1');

3. Аналог Ruby commander. Позволяет удобно разбирать ключи которые передаются при вызове скрипта.

var program = require('commander');

program
  .version('0.0.1')
  .option('-p, --peppers', 'Add peppers')
  .option('-P, --pineapple', 'Add pineapple')
  .option('-b, --bbq', 'Add bbq sauce')
  .option('-c, --cheese [type]', 'Add the specified type of cheese [marble]', 'marble')
  .parse(process.argv);

console.log('you ordered a pizza with:');
if (program.peppers) console.log('  - peppers');
if (program.pineapple) console.log('  - pineapple');
if (program.bbq) console.log('  - bbq');
console.log('  - %s cheese', program.cheese);

4. Также не нужно списывать со счетов переменные окружения ОС. К ним доступ через process.env.[NAME]
Например в windows они устанавливаются либо в системные переменные. Либо
> set MYVAR=bla
> node script.js

Bash, до конца работы сессии терминала:
$ export MYVAR=bla
$ node script.js
Bash, только на время выполнения скрипта:
$ MYVAR=bla node script.js

Комментариев нет:

Отправить комментарий