Γρήγορη αναφορά

Commander.js CLI Βιβλιοθήκη Cheat Sheet

Συνοπτικός οδηγός για το Commander.js στο Node.js: επιλογές παραμέτρων, υποεντολές, ανάλυση ορισμάτων και προσαρμοσμένη βοήθεια.

· Δημοσιεύτηκε

Commander.js Το Commander.js αποτελεί την ολοκληρωμένη λύση για διεπαφές γραμμής εντολών (CLI) στο Node.js.

Βασική ρύθμιση CLI

const { program } = require('commander');

program
  .name('my-cli')
  .description('Sample CLI utility written in Node.js')
  .version('1.0.0');

Ανάλυση επιλογών (Options)

program
  .option('-p, --port <number>', 'specify port number', 3000)
  .option('-s, --silent', 'suppress terminal output')
  .option('-e, --env <mode>', 'execution environment', 'development')
  .requiredOption('-c, --config <path>', 'path to configuration file');

program.parse(process.argv);

const options = program.opts();
console.log(options.port, options.silent, options.config);
  • <value>: Υποχρεωτική τιμή ορίσματος.
  • [value]: Προαιρετική τιμή ορίσματος.
  • Οι σημαίες χωρίς παραμέτρους λειτουργούν ως διακόπτες boolean.

Υποεντολές (Subcommands)

program
  .command('clone <source> [destination]')
  .description('clone a repository into a directory')
  .option('-b, --branch <name>', 'clone a specific branch')
  .action((source, destination, cmdOptions) => {
    console.log(`Cloning ${source} into ${destination || '.'}`);
  });

program.parse();

Προσαρμογή βοήθειας

// Προσθήκη προσαρμοσμένου κειμένου υποσέλιδου στο --help
program.addHelpText('after', `
Example call:
  $ my-cli -c ./app.json --port 8080
`);

// Χειροκίνητη εμφάνιση βοήθειας
program.outputHelp();

Σχετικά θέματα