简单文件操作bat

  • Post author:
  • Post category:其他

1. 批量修改文件后缀名

@echo OFF
for /r . %%i in (*.c) do (
    ren "%%i" *.txt
    echo 文件 %%i 修改完毕
)

for /r . %%i in (*.h) do (
    ren "%%i" *.txt
    echo 文件 %%i 修改完毕
)

for /r . %%i in (*.cpp) do (
    ren "%%i" *.txt
    echo 文件 %%i 修改完毕
)

echo 文件修改已完成!
pause

2. 批量复制并修改文件名后缀

@echo off
set current_dir=%cd%
set result_dir=%cd%\result\
set include_dir=%result_dir%include
set src_dir=%result_dir%src

::创建文件夹
if exist %result_dir% (
rd /s /q %result_dir%)  

md %result_dir%
md %include_dir%
md %src_dir%

::遍历.h文件
for /r . %%i in (*.h) do (
    call :copy_file %%i %%~ni %include_dir%
)

::遍历.c文件
for /r . %%i in (*.c) do (
    call :copy_file %%i %%~ni %src_dir%
)

echo 文件处理完毕!
pause
exit /b 

::参数1:带路径文件全称 参数2:去除后缀文件名 参数3:目标文件夹 
:copy_file
if exist %3\%2.txt (echo %1 文件命名重复,转换失败!) else (
    for /f "eol=* tokens=*" %%i in (%1) do (
        echo %%i >> %3\%2.txt 
    )
    echo %1 转换成功!
)
goto:eof

版权声明:本文为weixin_43002236原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。