华域联盟 DOS/BAT 批处理中实现替换文本内容

批处理中实现替换文本内容

首先:

注册表添加一个或两个 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 

本文由 华域联盟 原创撰写:华域联盟 » 批处理中实现替换文本内容

转载请保留出处和原文链接:https://www.cnhackhy.com/15253.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部