文件批量操作工具-maven打包与文件操作

记录工具代码。

将代码复制粘贴到以bat为后缀的文件中,双击后弹出cmd执行。

maven打包工具:

@echo off
rem 文件使用GBK编码,输出 会乱码
rem 如果IDEA输入参数无效,在CMD属性中设置使用旧版控制台,重启即可。或者使用CMD运行。
rem -s命令是自定义Maven设置
rem -Dmaven.repo.local参数是自定义本地仓库地址

title 打包服务成jar包

rem 选择环境
echo 设置: 0.默认环境; 1.丁欣裕;
set /p e=请选择环境:

rem 默认环境
if %e%==0 goto default
rem 丁欣裕
if %e%==1 goto ding

:default
echo 选择默认的打包环境
call mvn clean compile compile package
goto exit

:ding
echo 选择丁欣裕的打包环境
call mvn -s D:\MavenRepository\setting.xml -Dmaven.repo.local=D:\MavenRepository\repository clean compile compile package
goto exit

:exit
echo 已完成jar文件的打包



遍历进入子目录进行maven打包:

@echo off
echo =============== start ===============

rem 显示当前目录路径
set dir=%cd%
echo 当前目录: %dir%

rem 指定复制目标路径
set /p target=指定复制到该路径下:
echo 复制到: %target%

rem 选择maven配置环境
set /p env=请选择环境[0.默认环境  1.丁欣裕]:
echo 输入为: %env%

echo [开始循环进入子目录]
rem 循环子目录,进入子目录,执行mvn命令,返回
for /d %%i in (*) do (

    rem 将模块名称输出到一个文本文档中
    echo [当前模块]: %%i >> %target%\a.txt

    rem 进入子目录
    cd %%i

    rem 执行maven打包命令
    rem 默认环境
    if %env%==0 (
        echo 选择默认的打包环境
        call mvn clean compile compile package
    )
    rem 丁欣裕
    if %env%==1 (
        echo 选择丁欣裕的打包环境
        call mvn -s D:\MavenRepository\setting.xml -Dmaven.repo.local=D:\MavenRepository\repository clean compile compile package
    )

    echo 打包成功

    rem ====================
    rem Todo -> 将打包好的jar包复制出来到一个指定目录
    cd target
    echo 进入target目录  [%cd%]
    echo 将jar包复制到 [%target%] 目录下
    rem 如果存在同名文件会覆盖掉
    copy *.jar %target%
    cd..
    rem ====================

    rem 回到根目录
    cd ..
    echo 回到原目录下 [%cd%]

    echo [end]

)
echo [循环结束]
echo =============== 所有的jar包已经输出到 %target% 目录下 ===============

批量复制指定文件到多个子目录里指定的路径:

@echo off
title 批量复制文件到多个目录

echo 注意:批量复制文件到多个目录 (仅限该域目录下)
rem 显示当前目录路径
set dir=%cd%
echo 当前目录: %dir%
pause

echo =============== 开始 ===============
rem 指定文件
set /p target=输入被复制文件的地址:
rem 替换输入中的斜杠为Windows可读的反斜杠
set target=%target:/=\%
echo 正在检查文件是否存在……
if exist %target% (
    echo 文件存在
    goto copy
) else (
    echo 文件不存在
    goto exit
)

:copy
set /p relativePath=输入复制的目标地址,即模块内相对目录:
set relativePath=%relativePath:/=\%
echo [循环进入子目录]
rem 循环子目录,进入子目录,执行mvn命令,返回
for /d %%i in (*) do (
    echo 进入%%%i模块
    echo 正在复制文件中……
    if exist %dir%\%%i\%relativePath%\ (
        echo 目录已存在
    ) else (
        echo 目录不存在,正在创建目录……
        mkdir %dir%\%%i\%relativePath%\
    )
    copy %target% %dir%\%%i\%relativePath%\
    echo 复制文件完成
)
echo [循环完毕]
goto exit

:exit
echo =============== 结束 ===============

批量删除子目录下 指定文件:

@echo off
title 批量删除 InterfaceDesc.xml

echo 注意:批量删除 InterfaceDesc.xml文件 (仅限该域目录下)
rem 显示当前目录路径
set dir=%cd%
echo 当前目录: %dir%
pause

echo =============== 开始 ===============
echo [循环进入子目录]
rem 循环子目录,进入子目录,执行mvn命令,返回
for /d %%i in (*) do (

    if exist %dir\%%%i\src\main\resources\properties\InterfaceDesc.xml (
        echo 发现%%%i模块存在InterfaceDesc.xml文件
        echo 正在删除%%%i模块的InterfaceDesc.xml文件中……
        del %dir\%%%i\src\main\resources\properties\InterfaceDesc.xml
        cd %dir%
        echo 删除%%%i模块的InterfaceDesc.xml完成
    )

)
echo [循环完毕]
echo =============== 结束 ===============

批量删除子目录下指定文件:

@echo off
title 批量删除文件

echo 注意:批量删除文件 (仅限该域目录下)
rem 显示当前目录路径
set dir=%cd%
echo 当前目录: %dir%
pause

echo =============== 开始 ===============
rem 指定文件
set /p target=输入文件相对路径(从项目根目录开始):
rem 替换输入中的斜杠为Windows可读的反斜杠
set target=%target:/=\%
echo [循环进入子目录]
rem 循环子目录,进入子目录,执行mvn命令,返回
for /d %%i in (*) do (

    if exist %dir%\%%i\%target% (
        echo 发现%%%i模块存在该文件
        echo 正在删除文件中……
        del %dir%\%%i\%target%
        cd %dir%
        echo 删除文件完成
    )

)
echo [循环完毕]
echo =============== 结束 ===============

批量删除子目录里指定的目录

@echo off
title 批量删除子工程目录

rem 显示当前目录路径
set dir=%cd%
echo 当前目录: %dir%

rem 指定工程目标目录相对路径
set /p target=目录相对路径:
rem 替换输入中的斜杠为Windows可读的反斜杠
set target=%target:/=\%

echo [开始循环进入子目录]
rem 循环子目录,进入子目录,执行mvn命令,返回
for /d %%i in (*) do (
    cd %%i
    if exist %dir%\%%i\%target%\ (
        echo 发现%%i存在该目录
        echo 正在删除%dir%\%%i\%target%\目录中……
        rmdir /s /q %dir%\%%i\%target%\
        echo 删除%dir%\%%i\%target%\目录完成!
    )
    cd %dir%
)

echo 删除目录完成

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值