[Laya实战]Cmd Bat脚本入门篇(Laya案例编写,内含zip unzip压缩解压等) Win环境[开箱可用]

103 阅读2分钟

laya发布微信小程序后,会有一些东西是我们上传代码用不到的,但是laya还是会生成的东西

例如

1.res资源一般会用网络资源替换请求

2.json文件是个空的,或者某些js引用需要删除等

需求:

每次手动删除比较繁琐容易忘,所以特别想有一个自动化脚本工具

解决方案:

Cmd命令默认支持.bat脚本 windows环境

而且还有相关的zip,unzip exe足够用了

大部分cmd相关知识百度都有,我只列举几个常用的:

获取用户输入
set /p version=Please Write Version(1.0.0.0):
echo You Write Version %version%

输出 命令
echo 1.1 start clean unused file

设置字符串
set "file1=unpack.json"

进入目标文件夹
cd ../release/%file1%

判断文件是否存在
if exist "%file1%" ( 
    删除文件
    del %file1%
    echo.delete success %file1%
) else (
    echo.not found %file1%
)

复制文件夹
xcopy wxgame %file77% /e /i

压缩文件夹
%file100%/zip.exe -r %file88% %file77%/*

解压缩zip文件
unzip test.zip

删除文件夹
rd /s/q %file77%

重命名
rename %file3% %file77%

我项目中用到的bat文件

@echo off
set /p version=Please Write Version(1.0.0.0):
echo You Write Version %version%

echo ------------------------------
echo 1.1 start clean unused file
echo ------------------------------
:: 1.需要清理的文件名
set "file1=unpack.json"
set "file2=version.json"
set "file3=wxgame"
:: 版本相关
set "file77=%version%"
set "file88=%version%.zip"
:: 为了支持zip随机,记录bat文件夹位置
cd ../release/%file3%

if exist "%file1%" ( 
    del %file1%
    echo.delete success %file1%
) else (
    echo.not found %file1%
)

if exist "%file2%" ( 
    del %file2%
    echo.delete success %file2%
) else (
    echo.not found %file2%
)
echo ------------------------------
echo 1.2 clean unused file done
echo ------------------------------

:: 2.压缩打包
echo ------------------------------
echo 2.1 start zip project
echo ------------------------------
:: cd ../../
:: 复制文件夹
:: xcopy wxgame %file77% /e /i
:: rename %file66% %file77%
:: %file100%/zip.exe -r %file88% %file77%/*
echo ------------------------------
echo 2.2 zip project done
echo ------------------------------

:: 3.整理微信包
echo ------------------------------
echo 3.1 start build wx package
echo ------------------------------
:: 清理之前的项目文件夹
cd ../
rd /s/q %file77%
rename %file3% %file77%
echo ------------------------------
echo 3.1 build wx package
echo ------------------------------

pause

运行效果:

目录:

运行前

运行后