1.bat处理文件 保留换行(空白行)
简单的使用for循环遍历文件内容,执行替换后,输出的新文件会忽略原文件内空白行(不会打印出空白行,这样与原文件就会有出入)。解决方法遍历每一行原文件时,增加行号的打印,就不会出现空白行的情况,最后在输出的新文件将行号删除。以下为保留源文件换行的代码:
@echo off
setlocal enabledelayedexpansion
set SrcFileName="1".txt
set TargetFileName=2.txt
set SrcStr=old
set TargetStr=new
echo %SrcFileName%
REM --- Remove " from string-------------------
REM ---知识点1,删除 "1.txt" 中的 ""----------
set SrcFileName=%SrcFileName:"=%
REM set SrcFileName=%SrcFileName:~0,-1%
echo %SrcFileName%
REM ---知识点2,tokens,delims----------
for /f "tokens=1* delims=" %%i in ('findstr /n .* "%SrcFileName%"') do (
set line=%%i
echo !line!
if "!line:~1,1!"==