用于编辑程序

时间:2016-11-28 21:03:28

标签: loops batch-file editing

我想制作一个替换另一个文件的两行的批处理文件。我想用一个循环来替换第67行,其中i(text1,text2,text3)和第68行用j替换(num1,num2,num2)。

下面是一次迭代的代码。我想改变:

set "Replacementiso=SourceTermName = ac-225"

在i和

中有索引元素
set "Replacementsource=SourceTerm = 332"

在j。

中有一个索引元素

我还想用i中的元素重命名输出文件

ren file.txt ac-225.txt

每次迭代都会发生变化。

这是代码:

@echo off &setlocal


set "file=file.txt"
set /a isoLine#ToSearch=67
set /a sourceLine#ToSearch=68
set "Replacementiso=SourceTermName = ac-225"
set "Replacementsource=SourceTerm = 332"

(FOR /f "tokens=1*delims=:" %%a IN ('findstr /n "^" "%file%"') DO (
SET "Line=%%b"
IF %%a equ %isoLine#ToSearch% SET "Line=%Replacementiso%"
IF %%a equ %sourceLine#ToSearch% SET "Line=%Replacementsource%"
SETLOCAL ENABLEDELAYEDEXPANSION
ECHO(!Line!
ENDLOCAL
))>"%file%.new"
TYPE "%file%.new"
MOVE "%file%.new" "%file%"

ren file.txt ac-225.txt

0 个答案:

没有答案