中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-13 19:50
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求助:在文本每隔50行添加字符
楼 主 求助:在文本每隔50行添加字符 发表于 2008-09-23 09:59 ·  中国 浙江 宁波 联通
初级用户
积分 53
发帖 24
注册 2007-06-15 10:33
UID 91393
性别 男
状态 离线
先是在文本里面第一行添加指定字符,然后是每隔50行添加指定字符!

求各位大大们指点,先谢谢了!!!


例如:

000~050【括号前面是要添加的内容】
批处理在文本每隔50行添加字符
......
批处理在文本每隔50行添加字符
051~100【括号前面是要添加的内容】
批处理在文本每隔50行添加字符
......
批处理在文本每隔50行添加字符
101~150【括号前面是要添加的内容】
批处理在文本每隔50行添加字符
......
批处理在文本每隔50行添加字符
151~200【括号前面是要添加的内容】
批处理在文本每隔50行添加字符
......
批处理在文本每隔50行添加字符
201~250【括号前面是要添加的内容】
......

[ Last edited by stoneyu on 2008-9-23 at 10:44 AM ]
2 发表于 2008-09-23 13:43 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
UID 89899
性别 男
状态 离线
@echo off
setlocal enabledelayedexpansion
set RowNum=0
>"b.txt" echo 000~050
for /f "usebackq delims=" %%a in ("a.txt") do (
set /a RowNum+=1
>>"b.txt" echo %%a
set /a mod=RowNum%%50
if !mod! equ 0 (
set /a BgnNum=RowNum+1
set BgnTmp=100!BgnNum!
set BgnTmp=!BgnTmp:~-3!
set /a EndNum=RowNum+50
set EndTmp=100!EndNum!
set EndTmp=!EndTmp:~-3!
>>"b.txt" echo !BgnTmp!~!EndTmp!
)
)
move /y "b.txt" "a.txt"
3 发表于 2008-09-23 14:02 ·  中国 浙江 宁波 联通
初级用户
积分 53
发帖 24
注册 2007-06-15 10:33
UID 91393
性别 男
状态 离线
谢谢楼上的回复!!!非常感谢!!!
4 发表于 2008-09-23 19:57 ·  中国 河北 廊坊 联通
初级用户
积分 56
发帖 24
注册 2006-12-25 21:19
UID 74548
性别 男
状态 离线
hat朋友.你真是那里有需要那里去啊.真热心.哈...
这让我想起了一句话:能力越大,责任越大.
5 也来一个: 发表于 2008-09-23 20:08 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
UID 112398
性别 男
状态 离线
直接改写

@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('type a.txt') do (
set /a n+=1,m=n+49,v=n%%50
if !n! equ 1 (
echo 001~050>a.txt
) else (
if !v! equ 1 echo !n!~!m!>>a.txt
)
echo %%i>>a.txt
)
start a.txt

批处理之家新域名:www.bathome.net
6 拜读下! 发表于 2008-09-23 23:06 ·  中国 江苏 南京 鹏博士宽带
初级用户
积分 54
发帖 22
注册 2007-02-10 02:42
UID 79107
性别 男
状态 离线
好长时间不上了,这里还是学习的好地方
论坛跳转: