Board logo

标题: [文本处理] [已解决]批处如何实现将一个文本平均分割成规定份数 [打印本页]

作者: xuexilai    时间: 2012-1-30 19:29     标题: [已解决]批处如何实现将一个文本平均分割成规定份数

本帖最后由 xuexilai 于 2012-1-31 15:29 编辑

批处如何实现将一个文本平均分割成规定份数

麻烦各位哥哥姐姐了哈


分割2份的例子:

ip.txt   
内容:
172.16.23.1
172.16.41.54
172.16.41.12
172.16.46.36
192.168.15.15
192.168.154.12
192.168.46.12
192.168.46.68
192.168.47.69



运行批处后 实现   自动平均按文件的行数  分割成2份   ip.txt1.txt   ip.txt2.txt
(意思是自动平均按行数划分 成2份    行数不是我指定的 是自动平均行数    可规定划分的文件个数  比如3份 4份 分割好的文件名像ip.txt1.txt   ip.txt2.txt 以此类推  代码最好快 简洁哈)

ip.txt1.txt   
内容:
172.16.23.1
172.16.41.54
172.16.41.12
172.16.46.36
192.168.15.15

ip.txt2.txt
内容:
192.168.154.12
192.168.46.12
192.168.46.68
192.168.47.69
作者: xuexilai    时间: 2012-1-30 19:45

:victory:
作者: xuexilai    时间: 2012-1-30 19:45

亲们 亲们
作者: xuexilai    时间: 2012-1-30 20:42

等待中!!!!!!!!!!!!!!!!!
作者: xuexilai    时间: 2012-1-31 08:45

等待中!!!!!!!!!!!!!!!!!
作者: xuexilai    时间: 2012-1-31 10:56

等待中!!!!!!!!!!!!!!!!!
作者: xuexilai    时间: 2012-1-31 13:04

等待中!!!!!!!!!!!!!!!!!
作者: lvsehuaxue    时间: 2012-1-31 14:42

平均按三行一个文本,可自行修改。
  1. @echo off&setlocal enabledelayedexpansion
  2. set m=1
  3. for /f "delims=" %%i in (ip.txt) do (
  4.     set /a n+=1
  5.     if "%%i" neq "" echo %%i>>ip.text!m!.txt
  6.     if !n!==3 set /a m+=1&set n=0
  7. )
复制代码

作者: xuexilai    时间: 2012-1-31 15:29

谢谢你 已经找到代码了哦




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2