cac 学习

343 阅读1分钟

介绍

一个cli工具库 只有4个api

使用

1. 实现一个自动改名字cli工具

效果

image.jpeg

代码实现

const cli = require('cac')();
// 引入fs 进行读写
const fs = require('fs');
// 创建一个命令, 接受两个参数,一个是dir->原文件名 newdir->新文件名
cli
  .command('rename <dir> <newdir>', 'Remove a dir')
  .option('-r, --recursive', 'Remove recursively')
  .action((dir, newdir, options) => {
    console.log(dir, newdir, options);
    fs.renameSync(dir, newdir);
  });


cli.help();

cli.parse();

2. 结合 npm 命令

把刚才的命令放到 package.json 内的 script 中。

🤔️ 有个问题,我不能每次都这样写相对路径,很麻烦。

image.jpeg

image.jpeg

源码学习

问题

1. 目录分析