为实现node下打包压缩,了解额好几种常见的node第三方包,比如archiver,也可以实现文件夹打包压缩。
因为archiver需要配置文件夹下的文件,也可以用*来打包所有,但是如果文件夹下还有多层文件夹嵌套,实现起来就比较麻烦了。还有就是一些压缩工具的压缩算法并不符合我们想要的,或者输出文件的格式又比较单一,不能满足。
最后决定用node自带的内置模块加第三方模块结合使用,满足我们的各类需求,并且可以完美的打包整个文件夹包括文件夹结构来压缩。
需要模块如下:
其中fstream和tar为第三方库,需要执行安装命令
$ npm install fstream
$ npm install tar
来下载安装;
整个文件夹就按架构打包压缩好了,并且是node内置的gzip算法压缩。
文件系统流工具参考地址:https://www.npmjs.com/package/fstream