批处理.png到.webp

时间:2014-10-25 17:27:20

标签: image bash png webp

我有大约100个.png图像,所有这些图像都必须转换为.webp(Google的图像格式)。我正在使用Google的CLI工具。不知道如何批量处理它们。

2 个答案:

答案 0 :(得分:19)

您可以借助简单的bash脚本来完成此操作。

导航到图像所在的目录并执行此操作:

$ for file in *
> do
> cwebp -q 80 "$file" -o "$file.webp"
> done

您可以根据需要更改输出文件名。但应以.webp扩展名结束。

答案 1 :(得分:17)

如果你拥有那么多,你需要使用GNU Parallel,否则你将全年都在那里!

请先将一些文件复制到一个备用的临时目录中,然后在那里试一试,确保它在100,000张图像上使用之前完成所需的操作:

parallel -eta cwebp {} -o {.}.webp ::: *.png

这将启动并继续运行,因为许多进程都有CPU内核,每个进程都执行cwebp。处理的文件将是当前目录中的所有PNG个文件。

如果命令行太长,您可以使用find传递文件列表,如下所示:

find . -name "*.png" | parallel -eta cwebp {} -o {.}.webp