中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-03 22:51
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » DOS分割文件 查看 1,044 回复 11
楼 主 DOS分割文件 发表于 2007-04-01 05:29 ·  中国 广东 深圳 福田区 电信
初级用户
积分 38
发帖 17
注册 2006-10-12 01:25
19年会员
UID 65383
状态 离线
有一个txt文件,共有一万行号码.现在需要把它拆分为多个文件,每个文件400行号码,DOS命令如何写.
2 发表于 2007-04-01 05:58 ·  中国 浙江 杭州 华数宽带
银牌会员
★★★
积分 2,000
发帖 621
注册 2007-01-01 00:00
19年会员
UID 75212
性别 男
状态 离线
试试这个行不行



  1. @echo off
  2. set /a count=0
  3. set /a t=1
  4. for /f "delims=" %%a in (test.txt) do (
  5. set /a count+=1
  6. echo %%a >>%t%.txt
  7. if %count% geq 400 set /a count=0 && set /a t+=1
  8. )
BJSH发表于: 2007-03-31 16:49
3 发表于 2007-04-01 09:57 ·  中国 广东 汕头 电信
初级用户
积分 37
发帖 18
注册 2007-04-01 08:57
19年会员
UID 83600
性别 男
状态 离线
强~~~~~~~~
4 发表于 2007-04-02 23:10 ·  中国 广东 深圳 福田区 电信
初级用户
积分 38
发帖 17
注册 2006-10-12 01:25
19年会员
UID 65383
状态 离线
不对啊,怎么没有用呢.只生成了一个新的1.txt文件,可比原来的文件还要大.
5 发表于 2007-04-03 00:37 ·  中国 江苏 苏州 联通
银牌会员
★★★
积分 1,181
发帖 533
注册 2006-08-14 12:54
19年会员
UID 60484
状态 离线
要使用变量延迟
6 发表于 2007-04-04 06:27 ·  中国 广东 深圳 福田区 电信
初级用户
积分 38
发帖 17
注册 2006-10-12 01:25
19年会员
UID 65383
状态 离线
什么 意思?
7 发表于 2007-04-04 06:45 ·  中国 浙江 杭州 华数宽带
银牌会员
★★★
积分 2,000
发帖 621
注册 2007-01-01 00:00
19年会员
UID 75212
性别 男
状态 离线
把你的文件作为附件传上来
8 发表于 2007-04-04 07:06 ·  中国 广东 深圳 福田区 电信
初级用户
积分 38
发帖 17
注册 2006-10-12 01:25
19年会员
UID 65383
状态 离线
号码在附件中
附件
号码列表.rar (48.07 KiB, 下载次数: 20)
9 发表于 2007-04-04 07:17 ·  中国 广东 广州 电信
高级用户
★★★
潜水修练批处理
积分 788
发帖 366
注册 2006-12-31 02:43
19年会员
UID 75048
性别 男
状态 离线
这东西貌似不止1W行……
算了,没有影响的,修改了一下2楼的代码,不用变量延迟,使用了call的方法

@echo off
set /a count=0
set /a t=1
for /f "delims=" %%a in (test.txt) do call :doit %%a
goto :eof

:doit
set /a count+=1
echo %1 >>%t%.txt
if %count% geq 400 set /a count=0 && set /a t+=1
10 发表于 2007-04-04 09:13 ·  中国 河北 石家庄 联通
初级用户
积分 26
发帖 11
注册 2007-04-04 08:34
19年会员
UID 83921
性别 男
状态 离线
都是高手,慕名而来,学习了。
11 发表于 2007-04-05 00:07 ·  中国 广东 深圳 福田区 电信
初级用户
积分 38
发帖 17
注册 2006-10-12 01:25
19年会员
UID 65383
状态 离线
已经OK了,不过cmd好像很占用CPU,有没有好的解决方法?
12 发表于 2007-04-05 01:21 ·  中国 广东 广州 电信
高级用户
★★★
潜水修练批处理
积分 788
发帖 366
注册 2006-12-31 02:43
19年会员
UID 75048
性别 男
状态 离线
由于你要处理的信息量太大,所以会比较占用CPU资源
论坛跳转: