我有两个文件夹Types和TypeBodies,里面有同名的文件(后缀不同),否则只在Types里面。我需要删除每个文件里面前三行注释的内容,然后把TypeBodies的文件内容放到Types里的同名文件后。
- 删除所有文件的前三行
@echo off&setlocal enabledelayedexpansion
rem 删除Types、TypeBodies文件夹里的前三行
rem 遍历TypeBodies中的所有文件
for /r .\TypeBodies %%i in (*) do (
echo %%i
rem 按行读取文件内容,跳过前三行;‘findstr .* %%i‘查找文件所有内容,包括空格和空行
for /f "skip=3 delims=" %%j in (‘findstr .* %%i‘) do (
rem 按行写到$
echo;%%j>>$
)
rem 把$中内容写到原文件
move $ %%i
)
pause
- 合并同名文件
@echo off&setlocal enabledelayedexpansion
rem 把TypeBodies里的文件复制到Type的同名文件后边
rem 遍历Types里的文件
for /r .\Types %%i in (*) do (
echo %%~ni
rem 如果TypeBodies里存在同名文件,合并两个文件,并放到Types文件夹
if exist .\TypeBodies\%%~ni.tpb copy /b %%i+.\TypeBodies\%%~ni.tpb %%i
)
pause
原文地址:https://www.cnblogs.com/so-easy/p/10010401.html
时间: 2024-10-18 18:38:21