小编Ste*_*son的帖子

使用for/f和if语句和变量查找和替换字符串

我写了一个批处理文件,我想用另一个.txt文件中的字符串覆盖键字符串.

目前它完全复制新的File.txt文件,但不会用OldFile.txt文件中的字符串替换字符串.

File.txt文件中的字符串示例:

...

#密码
PWORD =

#AccountName
Account =

#TownName
Town =

#Postcode
Postcode =

#LocationChangedDate
LocationChanged =

我想要替换的OldFile.txt文件中的字符串示例:

...

#密码
PWORD = ABC

#AccountName
帐户= 123

#TownName
Town = LDN

#邮编
邮编= WS77TP

#LocationChangedDate
LocationChanged = 01/01/2015

有人可以指出我正确的方向或解释我在哪里犯了错误?

@echo off

setlocal disableDelayedExpansion

::Variables
set InputFile=F:\EXCHANGE\3\Machine\File.txt
set OutputFile=F:\EXCHANGE\3\File-New.txt
set CopyFile=F:\EXCHANGE\3\OldMachine\OldFile.txt

set _strFindPword=Pword=.*
for /F "delims=" %%A in ('findstr /x "Pword=.*" %CopyFile%') do set _strInsertPword=%%A

echo.%_strInsertPword%

set _strFindAccount=Account=.*
for /F "delims=" %%B in ('findstr /x "Account=.*" %CopyFile%') do set _strInsertAccount=%%B …
Run Code Online (Sandbox Code Playgroud)

batch-file find-replace

5
推荐指数
1
解决办法
1123
查看次数

标签 统计

batch-file ×1

find-replace ×1