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

[文本处理] 【已解决】求助:批处理如何分解竖排数据并添加序号?

本帖最后由 思想之翼 于 2018-6-4 10:57 编辑

D:\数据1\中有210个文本,分别命名为001-210,每个文本内数据格式统一.
例如001.txt数据格式:
5679
0588
4415
5966
...
欲将001.txt的数据:
5679分解为56 79
0588分解为05 88
4415分解为44 15
5966分解为59 66
...
然后竖排为:
56
79
05
88
44
15
59
66
...
再添加序号(1000001为起始序号):
1000001 56
1000002 79
1000003 05
1000004 88
1000005 44
1000006 15
1000007 59
1000008 66
...
导出到D:\数据2\001.txt

同理,D:\数据1\中的文本002-210如上处理后,分别导入D:\数据2\002.txt-210.txt
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

没做测试,所以请备份数据.
  1. @echo off&setlocal enabledelayedexpansion
  2. set "sd=D:\数据1"
  3. set "dd=D:\数据2"
  4. for /f "delims=" %%a in ('dir /a-d/s/b *.txt') do (
  5. set /a "n=1000000"
  6. (for /f "delims=" %%b in ('type "%%a"') do (
  7. set "var=%%b"
  8. set/a n+=1
  9. set/p"=!n! "<nul
  10. echo;!var:~,2!
  11. set/a n+=1
  12. set/p"=!n! "<nul
  13. echo;!var:~2!
  14. ))>"%dd%\%%~nxa"
  15. )
  16. pause
复制代码
1

评分人数

QQ 33892006

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f %%a in ('dir /b D:\数据1\*.txt') do (
  4.     set nu=1000001
  5.     (for /f %%i in (D:\数据1\%%a) do (
  6.     set str=%%i
  7.     echo !nu! !str:~0,2!
  8.     set /a nu+=1
  9.     echo !nu! !str:~2,4!
  10.     set /a nu+=1
  11.     ))>D:\数据2\%%a
  12.     )
  13. pause
复制代码
1

评分人数

TOP

返回列表