首先: 注册表添加一个或两个 REG_DWORD 值: HKEY_LOCAL_MACHINE/Software/Microsoft/Command Processor/EnableExtensions 或 HKEY_CURRENT_USER/Software/Microsoft/Command Processor/EnableExtensions 设值为1 新建文件aaa.bat: @echo off set f=c:/aaa.txt set f2="c:/aaa.bak.txt" for /?>%f% if exist %f2% del %f2% for /f "tokens=* delims=%" %%l in (%f%) do ( set line=%%l set line=!line:FOR=F_O_R! echo !line!>>%f2% ) 执行aaa.bat 所有的FOR都被替换为F_O_R并写入aaa.bak.txt 缺点:原文件(aaa.txt)空行无法读取 哦,学习 第一次接触批处理中变量的内容替换 set str=12345 set str=%str:234=000% echo %str% 结果10005 固命按fosjos提供的,命令扩展后就可以用批处理来替换文本了 另命令扩展默认是启用的,我们只需将延迟变量环境扩展启用就可以了,另也可以通过命令行实现: start cmd /v:on /c test.bat