b.txt文本如下:
###############################
邮箱:
FirstName: ASWATH
LastName: KHAN
SSN: 565-36-9631
Question: City of Birth
Answer: Fremont
AltEmail:
Phone: 5103785694
Address: 38730 Lexington Street
BirthDay: 1976-3-16
State: CA
City: Fremont
Zip: 94536
###############################
邮箱:
FirstName:kyicgjhsh
LastName: xgdg
SSN: 565-36-9631
Question: City of Birth
Answer: ughddry
AltEmail:
Phone: 87+43785694
Address: 38730 xington Street
BirthDay: 1972-3-16
State: CA
City: remhdth
Zip: +74536
###############################
###############################
邮箱:
FirstName: ASWATH
LastName: KHAN
SSN: 565-36-9631
Question: City of Birth
Answer: Fremont
AltEmail:
Phone: 5103785694
Address: 38730 Lexington Street
BirthDay: 1976-3-16
State: CA
City: Fremont
Zip: 94536
usename: gntxgzdxg
password: 97fcggzd
###############################
a文本的第2个usen和pass写入b文本的第2个信息里面
邮箱:
FirstName:kyicgjhsh
LastName: xgdg
SSN: 565-36-9631
Question: City of Birth
Answer: ughddry
AltEmail:
Phone: 87+43785694
Address: 38730 xington Street
BirthDay: 1972-3-16
State: CA
City: remhdth
Zip: +74536
usename: xgxdtgsdg
password: mfyfjgcdh
###############################
以此类推,第3个用户名和密码写入b文本的第3个信息里面作者: tongzj 时间: 2010-2-9 18:36 利用双重循环可以实现,同时需要利用for 命令的skip定位。
@echo off
setlocal enabledelayedexpansion
echo ###############################>new.txt
set skip=1
for /f "tokens=*" %%a in (a.txt) do (
if not defined usename (
set usename=%%a
) else (
set password=%%a
call :loop
set usename=
set password=
)
)
goto :eof
:loop
for /f "skip=%skip% tokens=*" %%b in (b.txt) do (
if "%%b"=="###############################" (
echo %usename% 1>>new.txt
echo %password% 1>>new.txt
echo ###############################>>new.txt
set /a skip+=1
goto :eof
) else (
echo %%b>>new.txt
set /a skip+=1
)
)
[ Last edited by tongzj on 2010-2-9 at 18:37 ]作者: wslqy 时间: 2010-2-10 12:35 非常感谢2楼的大哥,你的这个批处理很好很强大,