标题: DOS分割文件
[打印本页]
作者: lxq73061
时间: 2007-4-1 05:29
标题: DOS分割文件
有一个txt文件,共有一万行号码.现在需要把它拆分为多个文件,每个文件400行号码,DOS命令如何写.
作者: bjsh
时间: 2007-4-1 05:58
试试这个行不行
Quote: |
- @echo off
- set /a count=0
- set /a t=1
- for /f "delims=" %%a in (test.txt) do (
- set /a count+=1
- echo %%a >>%t%.txt
- if %count% geq 400 set /a count=0 && set /a t+=1
- )
BJSH发表于: 2007-03-31 16:49 |
|
作者: wuwuwuming
时间: 2007-4-1 09:57
强~~~~~~~~
作者: lxq73061
时间: 2007-4-2 23:10
不对啊,怎么没有用呢.只生成了一个新的1.txt文件,可比原来的文件还要大.
作者: NaturalJ0
时间: 2007-4-3 00:37
要使用变量延迟
作者: lxq73061
时间: 2007-4-4 06:27
什么 意思?
作者: bjsh
时间: 2007-4-4 06:45
把你的文件作为附件传上来
作者: lxq73061
时间: 2007-4-4 07:06
号码在附件中
附件
1:
号码列表.rar (2007-4-4 07:06, 48.07 K,下载次数: 20)
作者: dikex
时间: 2007-4-4 07:17
这东西貌似不止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
作者: beijingju
时间: 2007-4-4 09:13
都是高手,慕名而来,学习了。
作者: lxq73061
时间: 2007-4-5 00:07
已经OK了,不过cmd好像很占用CPU,有没有好的解决方法?
作者: dikex
时间: 2007-4-5 01:21
由于你要处理的信息量太大,所以会比较占用CPU资源