0x00 前言
由于需要转发公众号,存下来的网页图片均为以 640 开头且没后缀的图片文件。有时图片中会夹杂 webp
与 gif
混在一起。我曾经写了一个批量转换 webp2png
的脚本。但那个会把除了 png
以外的格式都删除掉(包括 gif
)。因此,特意找出解决方法。
0x01 方法
一、我们先用 grep -r
找出属于 GIF
格式的图片并导出为 list.txt
grep -r GIF > list.txt
二、接着进入 list.txt
去除掉多余的文字(为了一会儿使用 xargs
命令)
vim list.txt
文件内容
匹配到二进制文件 640(29)
匹配到二进制文件 640(16)
匹配到二进制文件 640(2)
匹配到二进制文件 640(45)
匹配到二进制文件 640(9)
匹配到二进制文件 640(35)
匹配到二进制文件 640(38)
匹配到二进制文件 640(26)
使用vim的语句删除多余文字
:%s/匹配到二进制文件\ //g
保存退出
:wq
文件内容(删除后)
640(29)
640(16)
640(2)
640(45)
640(9)
640(35)
640(38)
640(26)
三、使用 cat
+ xargs
+ mv
命令批量重命名
cat list.txt | xargs -n1 -I {} mv {} {}.gif
四、最后用文件夹存起来等待其他 webp
使用 webp2png
脚本转换完成后取出
mkdir gif && mv ./*.gif gif
0x02 后记
webp2png脚本链接:【Linux 脚本】批量 webp2png