Board logo

标题: [文本处理] 10块求个小说合并的bat [打印本页]

作者: jingshi321    时间: 2020-10-16 15:16     标题: 10块求个小说合并的bat

文件夹下有n个txt文档,名字为  XXXX_1.txt   XXXX_2.txt  .......   xxxx_n.txt

xxxx有汉字有英文有子母     字数还不一定   想吧xxxx_n 名字相同的文档,按照_后的字符顺序合并到一起  名字是xxxx  
自己尝试写了一个    但是排序有问题    只能来拜托各位大佬了
作者: zaqmlp    时间: 2020-10-16 15:46

本帖最后由 zaqmlp 于 2020-10-17 13:42 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. mode con lines=3000
  4. cd /d "%~dp0"
  5. set m=0
  6. for /f "tokens=1* delims=_" %%a in ('dir /a-d/b "*_*.txt"') do (
  7.     if %%~nb geq !m! set m=%%~nb
  8. )
  9. for /l %%a in (1 1 !m!) do (
  10.     for /f "delims=" %%b in ('dir /a-d/b "*_%%a.txt" 2^>nul') do (
  11.         for /f "delims=_" %%c in ("%%~nb") do (
  12.             echo;"%%b" --^> "%%c%%~xb"
  13.             (type "%%b"&echo;&echo;)>>"%%c%%~xb"
  14.         )
  15.     )
  16. )
  17. pause
  18. exit
复制代码

作者: jingshi3211    时间: 2020-10-16 16:13

回复 2# zaqmlp


    刚注册的号,密码不对.提示邮箱不匹配找不回来......这人品也是没谁了   
    重新注册个来回复下大佬,上面的bat试过了,只合并了_1到_9的文件,有的小说_后面数字上千,求大佬调整下,拜谢.
作者: zaqmlp    时间: 2020-10-16 16:27

回复 3# jingshi3211


    实际文件名截图发出来
作者: jingshi3211    时间: 2020-10-16 17:03

本帖最后由 jingshi3211 于 2020-10-16 17:22 编辑

回复 2# zaqmlp
[attach]12805[/attach]
[attach]12806[/attach]
截取的只是一部分_后面的数字都会累加到上千
多谢大佬
作者: zaqmlp    时间: 2020-10-16 17:30

本帖最后由 zaqmlp 于 2020-10-16 17:53 编辑

回复 5# jingshi3211
以你截图里的文件名为例,我测试正常,加我q吧
[attach]12807[/attach]
作者: jingshi3211    时间: 2020-10-17 11:54

回复 6# zaqmlp


    [attach]12811[/attach]

[attach]12812[/attach]

加大佬qq一直没通过    就在论坛回下吧   
第一个图一共279个txt   只能合并前9个   第二个图     只能合并前99个   求大佬修改bat代码   拜谢
作者: Batcher    时间: 2020-10-17 12:17

回复 7# jingshi3211
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. cd /d "%~dp0"
  4. set m=0
  5. for /f "tokens=1* delims=_" %%a in ('dir /b /a-d "*_*.txt"') do (
  6.     if %%~nb geq !m! (
  7.         set "m=%%~nb"
  8.     )
  9. )
  10. for /l %%a in (1 1 !m!) do (
  11.     for /f "delims=" %%b in ('dir /b /a-d "*_%%a.txt" 2^>nul') do (
  12.         for /f "delims=_" %%c in ("%%~nb") do (
  13.             echo;"%%b" --^> "%%c%%~xb"
  14.             (type "%%b"&echo %%b;&echo;)>>"%%c%%~xb"
  15.         )
  16.     )
  17. )
复制代码





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