DOS批量处理替换~文本字符

来源:百度知道 编辑:UC知道 时间:2024/05/12 17:38:37
小弟酷爱DOS 水平初级,现求一 DOS批量处理替换~文本字符 望有能者 及时回复,小弟不胜感谢(如可以,请写详细些)

例:
A.TXT 如下:
abcd
bbcd

要求输出为 B.TXT
1234
4567

可以举一反三的DOS。BAT

谢谢

a.txt 里 abcd
如果出现 j k l 将会混乱 如 101112
因此推荐 采用 1 2 3 4
保存为 .cmd or .bat 格式运行

帖上来的代码被 百度 +上了空格,请自行将每行尾的空格去掉

@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
set a=0
set str=%%i
call :do
echo.>>b.txt
)
pause

:do
call set sth=%%str:~%a%,1%%
for %%a in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do (
set /a b+=1
if "!sth!" equ "%%a" (set /p=!b! <nul>>b.txt&set /a a+=1)
)
set b=0
if not "!sth!"=="" (goto do)

用echo就可以搞定了。。
echo 1234 >b.txt
rem echo后只能有一个空格,否则文件里就会多出一个空格
echo 4567 >>b.txt
rem “>>”是在1234后追加4567,如果用echo 4567 >b.txt那么文件里只有rem 4567了