用cmd命令遍历目录下的文件夹并使用TexturePacker合并小图

前言

今天我的一个同事问了我一个功能,在使用TexturePacker合并小图的使用总是得一个一个的去合,这样很麻烦,问我能不能用命令行的方式,遍历所有文件夹,在各自文件夹内合并生成小图(PS:他的电脑是windows的)。这个功能我之前也没做过,就上网搜了些资料,最后整理归纳了一小段代码。

TexturePacker的安装

从TexturePacker官网下载安装后,将软件的bin目录添加到系统的环境变量中

bat文件内容


@echo off
for /f %%i in ('"dir /ad/s/b "') do (
    if exist %%i\png (
        cd %%i
        TexturePacker %%i\png --sheet png.png --data png.xml --allow-free-size --no-trim --max-size 1024 --format sparrow --opt RGBA5555
        echo %%i
    )
)
pause

代码解析

dir /ad/s/b

基于bat文件的当前目录,遍历子目录 /ab 是文件夹 /s 是遍历子目录 /b 不显示标题信息或摘要

for命令

针对dir出的结果,单行逐步进行操作,其中%%i是每行的数据,也就是单个目录

/f 全路径

"delims=" 防止空格截断。

附录

《TexturePacker的命令行使用》

添加新评论