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

所属分类: 脚本专栏 / DOS/BAT 阅读数: 414
收藏 0 赞 0 分享
首先:
注册表添加一个或两个 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 
更多精彩内容其他人还在看

Cls 清除命令提示符窗口

Cls 清除命令提示符窗口
收藏 0 赞 0 分享

Cmd 启动命令解释器 Cmd.exe 的新实例

Cmd 启动命令解释器 Cmd.exe 的新实例
收藏 0 赞 0 分享

Cmstp 安装或删除“连接管理器”服务配置文件

Cmstp 安装或删除“连接管理器”服务配置文件
收藏 0 赞 0 分享

color 对于当前会话,更改命令提示窗口的前景和背景色

color 对于当前会话,更改命令提示窗口的前景和背景色
收藏 0 赞 0 分享

配置命令提示符的方法

配置命令提示符的方法
收藏 0 赞 0 分享

Comp 逐字节地比较两个文件或几组文件的内容

Comp 逐字节地比较两个文件或几组文件的内容
收藏 0 赞 0 分享

Compact 显示和更改 NTFS 分区上的文件或目录压缩

Compact 显示和更改 NTFS 分区上的文件或目录压缩
收藏 0 赞 0 分享

Del (erase) 删除指定文件

Del (erase) 删除指定文件
收藏 0 赞 0 分享

Convert  将 FAT 和 FAT32 卷转换为 NTFS

Convert  将 FAT 和 FAT32 卷转换为 NTFS
收藏 0 赞 0 分享

copy 将一个或多个文件从一个位置复制到其他位置

copy 将一个或多个文件从一个位置复制到其他位置
收藏 0 赞 0 分享
查看更多