批量转换图片为WebP格式有什么高效方法?

W″梓艺 阅读 46

项目里有上千张JPG/PNG图片要转成WebP,手动一张张转太慢了。我试过用cwebp命令行,但写了个脚本老是报错,路径一有空格就挂。

有没有靠谱的批量转换方案?最好是能保留目录结构、还能控制质量的那种。之前用的这个脚本:

for file in *.jpg; do
  cwebp -q 80 "$file" -o "${file%.jpg}.webp"
done

结果遇到文件名带空格的直接崩了,头疼……

我来解答 赞 8 收藏
二维码
手机扫码查看
1 条解答
司马可馨
改成这样就能处理带空格的文件名了,还支持目录递归:

find . -type f ( -name "*.jpg" -o -name "*.png" ) -print0 | while IFS= read -r -d '' file; do
dir=$(dirname "$file")
name=$(basename "$file")
cwebp -q 80 "$file" -o "${dir}/${name%.*}.webp"
done


记得加 -print0-d '' 来处理空格,质量参数自己调。这下应该稳了,累死我了...
点赞
2026-03-25 20:19