1.0.0 • Published 4 years ago
rui-filedisplay v1.0.0
演示流程:
(index.js) => 递归显示目录下的文件信息:读取当前命令下的目录
(index2.js) => 可接受参数:通过 process 获取参数,遍历参数所指定的目录下的文件,没指定参数就使用当前目录
(index3.js) => 可接收可选项:--recursive 或 -r
可能传入多个参数,接受参数需要过滤,是不是可选项,因为有可能 -r 作为第一个参数传入导致错误
对于布尔值的可选项,判断存在即可为 true,因为通过命令行传入的值,都是 true,即使传递 false 也会作为字符串 'false'
使用数组的 includes 判断存在即可为 true
判断目录存在变成了组合可能,不能直接 else 作为文件来处理
改成 CLI 方式:
复制 index3.js 重命名为 index4.js
在 index4.js 加上 node 命令文件声明,还要为该文件赋予可执行权限,执行 JS 文件并传入参数 (./index4.js -r ./)
改成全局 CLI
通过 PATH 实现
- 复制 index4.js 重命名为 display,通过 PATH 环境变量将文件所在目录添加到 PATH 中 (推荐临时导入,只在当前 Shell 生效,这样不会污染环境变量)
通过 package.json 的 bin 属性实现
初始化为 node 项目
修改 package.json 的 bin 属性,定义一个 display 命令,值是 ./display
运行 npm link,之后便可以在任何地方使用 display 命令了
在项目下运行 npm unlink 前,该命令都是永久生效的,测试完成记得 unlink,不要污染全局变量
发布这个包,然后在其他目录,下载下来,使用 npx 测试
1.0.0
4 years ago