求教dos批处理如何在替换文本指定字符串同时保留空行和空格
dos吧
全部回复
仅看楼主
level 1
kulomtroy 楼主
假设有一文件,内容如下:
aa
bb
cc
dse change
sldfiu
ques change
我想将文本中的change改成num,但又想保留空行和某些行前的空格,应该怎样做?目前我用for可以替换指定内容,但是要保留空行怎么试都不成功……
2011年10月16日 11点10分 1
level 3
@echo off
setlocal enabledelayedexpansion
(for /f "tokens=1* delims=:" %%a in ('findstr /n ".*" a.txt') do (
    set str=%%b
    if "!str!" neq "" (
        set str=!str:change=num!
    )
    echo,!str!
))>b.txt
2011年10月18日 05点10分 2
强啊!!解决了我两天的问题,非常感谢!!!!1[哈哈]
2014年08月14日 11点08分
level 1
kulomtroy 楼主
感谢你的帮助,[Love]空行可以保留了,但是怎么非空行的末尾反而会多了几个空格呢?[揉脸]

2011年10月18日 11点10分 3
level 3
因为你在贴吧复制代码的时候,每行后面都多了空格,删掉即可。
2011年10月21日 06点10分 4
level 1
kulomtroy 楼主
嗯,果然,问题解决,谢谢~
2011年11月03日 08点11分 5
level 1
大神,求助
@echo off
for /D %%i in (c:\*) do ECHO %%i
pause
在WINDOWS下面可以显示C盘所有文件夹,
为什么在纯DOS环境下面会提示语法错误呢?
我想做的是在DOS环境下面进行文件夹的查找,我该怎么做?谢谢。
2011年11月09日 03点11分 6
1