一个简单好用的 Node.js 图片压缩 CLI 工具,支持压缩 JPG、PNG、WebP 格式图片,支持递归处理文件夹、设置压缩质量,并自动跳过输出目录,避免重复压缩。压缩任务结束后输出压缩统计,压缩效果一目了然。
- ✅ 支持压缩常见格式:
.jpg,.jpeg,.png,.webp - ✅ 支持压缩单个图片或整个目录(包括子目录)
- ✅ 支持文件类型过滤(也可选择
all,压缩所有支持的类型) - ✅ 支持设置压缩质量(默认 80)
- ✅ 自动跳过输出目录(
compressed/),避免重复压缩 - ✅ 命令行易用,适合开发者集成在构建流程或工具链中
npm install -g sharp-imagegit clone https://github.com/Moveharder/sharp-image.git
cd sharp-image
npm install
npm linksharp-image -i ./imagessharp-image -i ./images -t jpg -q 70sharp-image -i ./photo/test.png -o ./output| 参数 | 说明 | 示例 |
|---|---|---|
-i, --input |
必选,图片文件或文件夹路径 | ./images |
-t, --type |
过滤文件类型,支持:jpg, png, webp, all(默认) |
-t jpg |
-q, --quality |
压缩质量(1~100,默认 80) | -q 75 |
-o, --output |
输出目录(默认是 input/compressed) |
-o ./dist |
-h, --help |
显示帮助信息 | -h |
images/
├── a.jpg
├── b.png
└── sub/
└── c.webp
压缩后:
images/compressed/
├── a.jpg
├── b.png
└── sub/
└── c.webp
- Node.js >= 18.17.0
- 支持 Mac(Intel/ARM)、Linux、Windows
如果你遇到 sharp 安装失败,请参考官方文档:
👉 https://sharp.pixelplumbing.com/install