手把手带你使用node开发一个命令行压缩工具

 2526

本篇文章给大家分享一个node实战,手把手带你使用node开发一个命令行压缩工具,希望对大家有所帮助!


手把手带你使用node开发一个命令行压缩工具


hello,最近写了一个压缩文件的命令行工具,今天分享给大家。

起因

由于前公司一些不可抗的情况,最近换了工作,吃饭的家伙也从Mac转成了Win,之前用Mac的时候,习惯了终端操作,现在用Win,感觉不是很适应,尽管Win自带的 powershell 也很强大。

工作中开发的项目在测试的时候需要先压缩成压缩包,再上传到对应的桌面应用测试。

在网上下载的压缩软件大都捆绑的有广告,hen~烦

powershell 的压缩命令太长了,用起来不方便,并且桌面应用ide升级之后,通过 Compress-Archive 压缩的文件不能被正确的解析。

最后一个原因,我不想再去学 powershell 的指令了!!!

综合上述的原因,我用nodejs写了一个压缩工具 fzip

对比

来跟 Compress-Archive 做一下对比

使用 fzip 压缩

  1. fzip -./test

使用 Compress-Archive 进行压缩

  1. Compress-Archive -Path ./test -DestinationPath ./test.zip
  2. # 解释一下参数
  3. # -Path 来源
  4. # -DestinationPath 输出位置

上边两条指令都会将当前目录下的test目录压缩成一个zip包,但是使用 powershell 的指令真的很长啊有木有!

当然了,fzip 也是支持指定输出位置和命名压缩包的,不仅如此,还支持设置压缩等级!下边会有详细的文档供您食用!


使用方法

使用 npm 安装

  1. npm install @lxqddd/fzip -g

使用 yarn 安装

  1. yarn install @lxqddd/fzip -g

使用 pnpm 安装

  1. pnpm install @lxqddd/fzip -g


参数说明


参数参数来源参数注解
-fFrom压缩目标来源(必选)
-oOutput压缩产物输出位置(可选,不传则为来源同级目录)
-lLevel压缩级别 0~9(可选,不传则默认为 6)
-nName压缩包名称(可选,不传则默认为文件或目录的名字)


使用示例

  1. .
  2. ├── LICENSE
  3. ├── README.md
  4. ├── gulpfile.js
  5. ├── package.json
  6. ├── src
  7. │   ├── cli.ts
  8. │   ├── core
  9. │   │   └── index.ts
  10. │   ├── types
  11. │   │   └── index.ts
  12. │   └── utils
  13. │       └── index.ts
  14. ├── tsconfig.json
  15. └── yarn.lock

基础用法

  1. # 指令执行之后会在 `src` 的同级目录输出一个 `src.zip` 的压缩包
  2. fzip -./src

指定输出位置

  1. # 指令执行之后会在桌面上输出一个 `src.zip` 的压缩包
  2. fzip -./src -~/Desktop

指定压缩等级

  1. # 压缩产物的压缩级别为 9
  2. fzip -./src -~/Desktop -9

重命名

  1. # 指令执行之后会在 `src` 的通级目录下输出一个名为 `test.zip` 的压缩包
  2. fzip -./src -n test

上边说的都是压缩目录的,也可以压缩单个文件,使用方法类似,只需要将输入路径指向被压缩的目标文件即可

压缩单个文件

  1. # 指令执行之后会在桌面输出一个名为 `test.zip` 的压缩包
  2. fzip -./src/cli.ts -~/Desktop -n test -9

项目地址:https://github.com/lxqddd/FZip

如果你觉得写的不错的话,欢迎三连~


本文网址:https://www.zztuku.com/detail-12268.html
站长图库 - 手把手带你使用node开发一个命令行压缩工具
申明:本文转载于《掘金社区》,如有侵犯,请 联系我们 删除。

评论(0)条

您还没有登录,请 登录 后发表评论!

提示:请勿发布广告垃圾评论,否则封号处理!!

    编辑推荐