[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]批处理怎么把一个txt文本按指定行数分割/平分成多个小的文本

本帖最后由 gcbgczhang 于 2021-7-31 14:17 编辑

请教各位老师,怎么把一个文本文件按指定的行数分段保存到名自的文件
1、文件文件内容:tmp.txt
4563474
65845
65888
3477547
695956965
4563474
65845
65888
3477547
695956965
4563474
65845
65888
3477547
695956965
4563474
65845
65888
3477547
695956965
2、要求,每3行存到一个文件,文件名分别为1.txt..2.txt..3.txt.........
3、实现目标:运行bat,屏幕提示:“请输入每个文件分配的行数”,回车后提示拖入待处理文本。
1

评分人数

    • pcl_test: 发帖前先使用论坛搜索PB -2

  1. rem win7及以上系统运行
  2. set n=3
  3. powershell -c "$n=1;$m=1;gc '文本.txt'|%%{$f=''+$m+'.txt';$_>>$f;if($n%%%n% -eq 0){$m++};$n++}"
  4. pause
复制代码

TOP

谢谢,我百度到了,应该是本论坛用户写的一段


@echo off
setlocal enabledelayedexpansion
set filenames=0
set numbers=0
set 每个文件几个帐号=7
set filename=1
for /f "delims=" %%a in (a.txt) do (
        set /a numbers+=1
        set /a filenames+=1
        echo %%a>>!filename!.txt
        if !numbers! geq !每个文件几个帐号! (
                set /a filename+=1
                set numbers=0
                )
)

TOP

TOP

返回列表