如何用批处理替换掉一个文本中的字符串到另一个文本中的字符串?

我己用批处理获得了本机网卡地址在 a.txt 中,另一文本b.txt 中有多处不是本机的网卡地址(但都是相同的),我现在想用批处理实现b.txt中网卡地址的替换(替换为a.txt中的地址-(注:a.txt中只有网卡地址,没其他字符了)),不要说让我用查找替换功能,那个早就知道了,我就想点击一下全搞定!
注:a.txt里面就是网卡址址 如:00-11-22-33-44-55 ,每台电脑都不同,所以不能给出具体的
b.txt里面有很多处如:ab-bc-cd-de-ef-fg 的网卡地址,现在就要把b.txt中所有的“ ab-bc-cd-de-ef-fg ”替换成“00-11-22-33-44-55 ”,ab-bc-cd-de-ef-fg 是定的 ,而 00-11-22-33-44-55 这个是不定的,每台电脑都不同

a.txt 是这样生成的:

@echo off
for /f %%a in ('getmac^|findstr "^00"') do echo %%a >a.txt

用记事本保存为bat文件

@echo off&&setlocal enabledelayedexpansion
if not exist b.txt echo b.txt不在同级目录下。&&pause>nul&&goto :eof
call :delall
for /f "skip=2 delims= " %%i in ('getmac') do set newmac=%%i
for /f "delims=" %%a in (b.txt) do (
set var=%%a
set "var=!var:ab-bc-cd-de-ef-fg=%newmac%!"
>>c.txt echo !var!
)
copy /y c.txt b.txt
:delall
if exist c.txt del c.txt/f/q
goto :eof
rem **************************************
rem 星号上代码另存为xx.bat,和b.txt放在同级目录下
rem MAC地址获取那句我的和你的不一样,你看不合用就改成你自己的吧
rem b.txt做好备份,这个运行之后就替换了
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-04-28
把A.TXT 和B.TXT文件发出来,然后要替换成什么样,也发出来...
第2个回答  2009-04-28
不知道a.txt和b.txt是否在同一个文件夹下面?

如何用批处理替换掉一个文本中的字符串到另一个文本中的字符串?
rem b.txt做好备份,这个运行之后就替换了

怎样用批处理截取某个文本中指定字符串之后的内容并输出到另一个文本...
直接更改做不到了。可以提取文本的每一行,把要修改的行,修改好后,和不用修改的行重新输入到另一个文件(也可以用变量代替)。再把这个修改好的文件,覆盖掉原来的文本文件。

用批处理找出TXT文本中的特定字符串,并写入另一个TXT文件中?
Echo OffFor \/f "tokens=1-2*" %%i in ('Type 1.txt^|Findstr \/i "SystemqroductName"') do (Echo %%k>>2.txt)Pause请用记事本把以上内容保存为批处理文件(xx.bat),批处理和1.txt放在一起使用,批处理运行后自动生成2.txt.内容为后面的名称(PH325U).

批处理命令提取文本中某段字符串中间的文字到另一个文件名
echo off&setlocal enabledelayedexpansion>$rename.js more +16 "%~f0"::无误及时采纳回答::如果文件夹中有entry.json文件则重命名同文件夹里的mp4文件for \/f "delims=" %%a in ('dir \/a-d\/b\/s "entry.json"') do ( if exist "%%~dpa*.jpg" ( for \/f "delims=" %%b in ...

如何写一个批处理文件 把指定的文件里的字符串替换成另一个字符串,然后...
objNewText = objRegEx.Replace(strContent,"bbb")Dim objTextFile: Set objTextFile = FSO.CreateTextFile("c:\\2.txt")objTextFile.Write objNewText objTextFile.Close Set FSO = Nothing 被替换字符是“aaa”,替换为“bbb”。源文件是c:\\1.txt,输出是c:\\2.txt,请实际更改。

批处理如何实现指定文件中字符替换成第二文本文件中的指定字符.
楼上的朋友-biatxue 说的是,确实没有考虑到一行有多个1234 在这种情况下替换,批处理比较麻烦,改了个VBS的。set fso = createobject("scripting.filesystemobject")set ofrt = fso.opentextfile("wind.txt",8,true)set ofrd2 = fso.opentextfile("B.txt",1): dim B(9999)do until ofrd2...

如何用批处理搜索文挡内的字符串并重新生成另外一个文件
1. ctrl-o 打开文件 2. ctrl-h 替换,设置如下:Replace Unit=Line(表示以行为处理单位)Search for Pattern=.*(表示所有类型的行)Unit number filter=1,2,3,9..Replace with Pattern=(不填表示删除)3. 点击replace,然后存盘,ok.如果删除2,5,8,11,14,17,20行:Unit number filter=2<3...

批处理如何从一个文档里提取某段字符串并写到另一个文档里
按照指定的路径搜索该文件(绝对有这个文件,因为已经过滤过了),并提取里面的某段信息(绝对只有一个,但里面有许多乱码)PACK: 后面的6个字符. 输出到C:\\2.TXT,格式如下如:"D:\\LOG\\A15.LOG"中是PACK:02155A,则输出文件名称(不包括后缀):提取的字符 A15:02155A8?<\/?h?蘟 PACK:02512D Jt8...

批处理 从一个文本里提取字符串 替换了一个文本字符串
echo offsetrlocal enabledelayedexpansionfor \/f "delims= tokens=1 eol=" %%a in (1.txt) do ( set a=%%a)for \/f "delims=\/ tokens=1,2 eol=" %%a in (2.txt) do ( echo !a!\/%%b>>3.txt)把这个bat放在这两个txt旁运行,生成的3.txt就是你想要的。

批处理提取文件中的某个字符串后面的字符,写到这个文件夹的名字里
共4步):从文件获取特定串所在行赋给变量s 去前面特定串 去掉字符]改文件夹名为s获取值 for \/f "delims="i in ('find "[ro.serialno]:["^<"%Folder%\\logcat.txt"')do set "s=%%i"set "s=%s:*[ro.serialno]:[=%"set "s=%s:]=%"ren "%Folder%""%s%"

相似回答