文件夹、文件名截取、压缩、替换、搜索操作的相关批处理

本文介绍了一种通过批处理脚本自动化工程打包流程的方法,从文件重命名、压缩、拷贝到清理,整个过程由一系列批处理命令实现,大幅缩短了打包时间,从原来的1分30秒减少到仅7秒。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

         最近看到公司工程打包很是麻烦,提取文件\分类\压缩\打包 一大堆. 计算了一下得整整一分三十秒. 我司打包文件的框架如下:

(涉及到公司的一些东西,此处用其他名称代替相关目录名称)

注:因本人没学过这个,下列都是自个儿结合百度摸索的方法,有不对不正确的地方请指正。避免误人子弟

下面罗列了关键的几个步骤:

1、现将起止标记写好

@echo off

        pause

2、AABBCC_release文件夹 重命名为AABBCC:

//搜索关键字release的关键字文件夹,

for /d %%i in (*release.*) do (
    set temp=%%i
    echo  %temp%
)

//截掉后8位字符重命名文件夹,
for /d %%i in (*release*) do ren "%%i" "%temp:~0,-8%"

 

3、将子文件中的指定.lod 和.def文件提取到上级菜单
for /f %%a in ('dir /ad/b') do (
pushd "%%a"
xcopy /yh *.lod ..\
xcopy /yh ipo_mmi.def ..\
xcopy /yh ipo.def ..\
popd
)

4、AABBCC文件夹压缩为debug.rar(AABBCC 可视作文件夹名称上的关键字提取)
for /d %%i in (*AABBCC*.*) do RAR a -r -ep1 "debug.rar"  %%i

5、带target关键字的压缩为同名压缩包

for /d %%i in (*target*.*  ) do RAR m -r -ep1 "%%i.rar"  %%i

6、删除AABBCC文件夹里面的所有子文件,保留文件夹
for /d %%i in (*AABBCC*.*) do del /a/f/q %%i

7、拷贝文件到含有AABBCC标记的文件里
for /d %%i in (*AABBCC*.*) do xcopy ipo_mmi.def %%i /y
for /d %%i in (*AABBCC*.*) do xcopy ipo.def %%i  /y
for /d %%i in (*AABBCC*.*) do xcopy debug.rar %%i /y

8、截取掉后几位字符并重命名.lod文件 (去掉_release_flash字符)
for %%i in (*.lod) do (
set a=%%i
ren %a:~0% %a:~0,-19%.lod
)
echo %a:~-4%
if %a:~-4% == .lod (
    echo %a%
    ren %a%  %a:~0,-18%.lod
) else (
    echo "error..."
)

9、将.lod和任意表格压缩为到同名.rar,
for /f "delims=" %%i in ('dir /b /a:a *.lod *.xlsx *.xls *.doc *.docx') do WinRAR a -ep1 %a:~0,-18%.rar  "%%i"

10、拷贝所有的rar 到最终文件夹
for /f "delims=" %%a in ('dir /a-d /b *.rar') do xcopy "%%a" "%a:~0,-18%"

11、删除除文件夹外的所有文件
for /f "delims=" %%i in ('dir /b /a:a' ) do del  "%%i"

 

最终打包时间:7秒

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值