Skip to content

commander-生成命令行工具

javascript
import { Command } from "commander";

const program = new Command();
program
  .name("vue")
  .version("0.0.0.1")
  .usage("<command> [options]")
  .description("<<<<<<<<<<")
  .option("-a")
  .option("--b")
  .option("-c --color")
  .option("-d --des", "aaaaa")
  .option("-n --name <app-name>", "aaappp nnn")
  // .requiredOption("-m <m-name>", "abc") //必填
  .option("-e <e...>", "eee")
  .option("-f [f...]", "")
  .option("-g <g...>", "", (param, preResult) => {
    console.log("参数预处理1:", param, preResult);
    return param;
  })
  .option("-g2 <gg>", "", (...props) => console.log("参数预处理2:", props));

program
  .command("create <app-name> [version]")
  // .usage("?FA?")
  .description("创建一个项目")
  .action((AppName, version) => {
    console.log("action  create <app-name>:", AppName, version);
  });

program.parse(process.argv);
// console.clear()
console.log("1==>", program.opts());